Vibe coding mini games
Vibe coding mini games
An experiment in game design, using Claude to make one mini game a day. Just for fun.
Cash Grabber 5000
From start to finish, I created a silly little brain-rot game. Just grab as much falling cash as possible in 30 seconds.
The project: I wanted to see if I could make a dead-simple, addictive game with satisfying scoring and a Lisa Frank-style color palette.
The process: Starting with a fairly long prompt, I asked Claude to generate the one-page game by describing the visuals, the rules, the gameplay run time, scoring framework, visual design style and effects, music style, content style, the odds of certain game elements occurring, and the congratulations messaging. The first version worked as I had imagined, but I wanted to make it more exciting and have a more cohesive feel.
Playing and refining
Working with Claude to improve music and gameplay
Picking music: I had asked for some 8-bit arcade sounding music, but it wasn’t quite right. I wanted something that matched the look and feel of the game. I asked Claude to make me a music sampler to choose from different soundtracks and it went so far as to put it in the design style of the game. I went with Pop Princess, which was just right for all the neon colors and rainbow effects.
Improving gameplay: While Claude got the functionality correct, the tap targets were too small on the bills and coins, and so was the cursor. The game was far too difficult, so I slowed down the motion of the targets and increased their size.
Adding an Easter egg: Personally, I love an Easter egg in a game. They are extremely rewarding and make the game more dynamic. So after playing the game a few times, I set a new rule: If the player goes against the logic of the game and only grabs coins, they get a bonus of $500 and a special congratulations message.
Content design
Guiding Claude on messaging and tone, and then rewriting it all anyway
The process: Based on the design style, Claude made a pretty good guess on what I might want for the content. However, the voice was a little too mature for the game. I wanted the voice to sound like a young, terminally online person. I dug into the code and updated all the copy variants for the final messages until it was the right level of unhinged.
Learnings: Prompts are like magic spells, and it can take a lot of testing and revising your spell to get what you had envisioned. In this case, I could have tried re-prompting to generate different dialogue, but writing the content is the fun part for me. Claude did all the hard work I couldn’t do anyway.
Untitled Facebook Marketplace game
A role-playing game of housewares arbitrage
The project: Using my love of scriptwriting, I wanted to use Claude to create a funny role-playing game about a mundane universal experience.
The process: I asked Claude to generate a two-step game by describing the visuals, the rules, the framework of of the conversation choices, visual design style, content style, the odds of certain game elements occurring, and the congratulations messaging.
The game: The first part of the game is a role-play format. The player responds to the scenario and starts negotiating the deal. There are three directions they can take the conversation (a normal price quote, an unrealistically high price, or a third wild-card option). The computer role-plays as the potential buyer and gives appropriate responses. Once the deal is made, the scene changes.
In the second part of the game, the player is taken to the scene of the sale, which is a Walmart parking lot. One of three randomized scenarios plays out without the player’s interaction: the player sells the toaster successfully, the buyer never shows up, or the buyer robs the seller. Just like in real life, the player enters the scene without any idea which will happen.
Co-designing with Claude
Claude surprised me by improvising some creative choices I liked, and inspired others.
The dialogue: I had given the framework of the text conversation in part 1, and Claude took the context of Facebook marketplace and generated questions and responses that were surprisingly funny and the right tone for two strangers aggressively negotiating a deal online. I made some edits but was generally happy with Claude’s output. This was a nice surprise on the first round of prompting.
The scene description: I had prompted Claude to create the scene for part 2 at a high level with no real detail, so I was prepared to be disappointed in what it produced. But in my prompt, I had given the direction to use a traditional role-playing game style, so Claude played out the scene and added descriptions of the action at the bottom. I wasn’t expecting that, either, and was happy with the creative call.
Then added a prompt to include dialogue between the two characters, but I didn’t provide a script. I was curious what AI would produce. Sure enough, Claude used the tone of the initial text conversation and translated it for this scene, and it worked great.
Learnings: Consider the secondary effects and implications of your prompt. Here, Claude interpreted design and story elements from the description “role-playing game” and made choices I hadn’t considered. In this case, it enriched the game in ways I didn’t have to articulate.