Forget ordinary to-do lists. In “I summoned a demon to do the laundry, and now my socks can play the piano”, you're a lazy bum who wants to summon demons to do menial tasks. You'll need to get creative, substituting everyday household items for the bizarre ingredients demanded by ancient rituals. Think “essence of starlight” replaced with... a household plant?
To do that, the game uses Google’s Gemini API to analyze your substitutions and generate unique in-game effects based on your creativity. The result? A hilarious and unpredictable experience where your ingenuity determines the kind of eldritch power-ups you receive. Will your socks gain sentience and a penchant for piano concertos? Or will your washing machine become a portal to another dimension?
At the heart of the game lies the Gemini API. This isn't really about generating text; I’ve written a prompt that can understand, interpret, and then evaluate your creative concepts. In the game, it acts as the arbiter of your ingenuity, the judge of your bizarre substitutions.
Here's how it works:
For example, let's revisit the scenario where you need "essence of starlight" to summon a laundry-doing demon. If you, the player, suggest using a houseplant because "photosynthesis converts sunlight (which is the light of a star) into energy," the API might respond with:
{ "inappropriate": false, "creativity": 7.5, "passed": true, "effect": "The summoned creature seems to have absorbed the plant's life force and now seems to have a light, pleasant aroma, and all the plants in your house seem to have grown a little taller." }
This demonstrates the API's ability to not only understand the connection between your substitution and the required ingredient but also to generate a thematically relevant and entertaining consequence. It's this dynamic interplay between player input and AI interpretation that makes this game so unique. Every time you play, the output is wildly different, driven by the player's imagination and the API's assessment of their creative choices
Integrating any Large Language Model (LLM) into a game presents a unique set of challenges. LLMs can be unpredictable partners in the development process. While the Gemini API proved remarkably adept at following defined output schemas (a blessing for any developer!), it wasn't without its quirks.
The biggest hurdle I encountered was ensuring the API received and correctly interpreted the player's input. Initially, I was baffled by the API generating effects related to "popcorn" and "surveillance cameras" when the player's substitutions were nowhere near those concepts. After some head-scratching and debugging, the culprit was revealed: I hadn't properly included the player's input in the prompt sent to the API.
This highlighted a crucial aspect of working with LLMs: precise and comprehensive prompting is paramount. Even a minor omission or ambiguity can lead the API down unexpected paths, generating outputs that are thematically irrelevant or just plain nonsensical.
“I summoned a demon to do the laundry, and now my socks can play the piano” is more than just a silly game about summoning demons to do chores. I’m not actually sure I’d describe it as a “game” - it’s more of a “toy”! It was a fun experiment in using AI as a core mechanic. By using Gemini to parse player’s input, it opens the possibility of making a game that riffs off the player’s creativity. AI is largely pretty bad at being creative itself (it’s just using existing creative work), but if you feed it something interesting and limit the output, it really makes the player feel part of the game.
AI is a tool. It’s a surprisingly powerful tool, but it is best used in very specific ways. You wouldn’t use a sledgehammer to chop down a tree! Please don’t think AI is some magic silver bullet to the world’s problems. It isn’t. But it is damn good at writing natural text given an input, provided you don’t actually care about the output.
I used AI here as an active participant in the creative process. That’s a little bit cool, I think! By harnessing the power of LLMs like Gemini, we can create games that are truly responsive to player ingenuity. As AI technology continues to evolve, we can look forward to even more innovative and engaging gameplay experiences that empower players to shape their own narratives and explore the limitless realms of creativity. Now, if you'll excuse me, I have a demon to summon to fold my laundry… And you should play the game: https://wayfarergames.itch.io/abominable-butlers
-Dom
Did you like this post? Tell us
Leave a comment
Log in with your itch.io account to leave a comment.