Inspiration
We started out with a horror educational game, but realized that we wanted to flip the script. So, we made a cozy, aesthetically pleasing game where the real villain is granny's unkind words!
What it does
Our game is a 2D topdown game, created with prompt engineering and some clever game design. The overall game mechanics include traveling in the overworld map to reach the next neighbor, the witty dialogue scenes between granny and her neighbors, and the subsequent battles that follow. Basically, the game handles user-interface scenes as well as 2D maps to blend the transition between levels, all while maintaining a pleasing, put-together theme.
How we built it
We used Godot game engine with the help of GoogleAIStudio and Claude for implementation guiding, Google Gemini for sprite generation, and kenney.nl for open source asset packs. The 2D map is a layered tile construction complete with collision barriers and aesthetic choices. The game structure itself follows a 2D map door trigger mechanic that opens the associated neighbor dialogue in our dialogue system, which triggers a turn-based attack sequence akin to Pokemon-style fighting games.
Challenges we ran into
The biggest challenge we ran into was tweaking our AI-generated code to fit our specific project needs. Sometimes, we'd find that the LLM didn't quite get the idea of what we were doing, so we had to adjust and fine-tune the coding and user interface modules to get things working as we wished. Other challenges were pretty run-of-the-mill, mostly under the general umbrella of debugging.
Accomplishments that we're proud of
1) The dialogue system. This template scene opens as a door trigger, and takes the level completion data from our game manager to determine which neighbor we're talking to. From its neighbor dictionary, it autofills labels, buttons, and the full-body sprite of the neighbor. This system was a bit difficult to set up, but was entirely worth it in the fact that it could be used for each level connection. 2) Neither of us have experience with C#, so it was really great to see that we could adapt and overcome this inherent difficulty. Both of us have programming experience, but at first neither of us could communicate with Godot's script-making. We were nervous to make a game project due to this caveat, so we're super proud of the fact that we ended up with an awesome project and interesting code!
What we learned
We learned a lot about LLM capabilities and applications. For example, we were surprised at the accuracy and detail of our prompt-engineered implementation guides, as we weren't expecting the LLM to go into so much program-specific detail. It was really nice to be able to save time coding and put our efforts into building battle mechanics, theming, and other cool details that we would never have otherwise had the time to implement. The coolest thing, though, is that now we know how to make a video game!!
What's next for Grumpy Grandma Simulator
We're nowhere near done with GGS. For one, we want to go back in and replace our open source and AI-generated images with hand-drawn pixel art. The placeholders are convenient for this project, but we're interested in going deeper. Aside from that, we also want to add in more funky details, battle mechanics, and secrets (like a hidden final boss!). Basically, while the project timeline may have just ended for HooHacks, GGS development is still going strong!
Built With
- backgroundremover
- claude
- googleaistudio
- googlegemini
- kenney.nl
Log in or sign up for Devpost to join the conversation.