Inspiration
my inspiration came directly from the unholy trinity of modern frustration: bureaucratic gatekeepers, entitled neighbors, and people who use the word "gnarly" unironically. I wanted to build a safe space to practice winning these unwinnable arguments—a dojo for verbal disputes. The core idea was simple: what if you could argue with an AI that's just as unreasonable as a real person, but you could actually win?
What it does
Ever wanted to win an argument against someone completely unreasonable? Welcome to The Blame Game, a hilariously chaotic web app where your voice is your only weapon. Using your microphone, you'll hold down the "SHOUT" button to argue with AI-powered archetypes like "Karen from the HOA" or "Brenda from the DMV." They'll talk back and even interrupt you in real-time using hyper-realistic voices from the ElevenLabs API. Fill their frustration bar before yours boils over to claim victory in the ultimate war of words!
How we built it
This gloriomemonument to pettiness was forged in the fires of pure, vanilla JavaScript, HTML, and CSS.
- The Player's Fury: I wired up the Web Speech API (SpeechRecognition) to listen for the user's righteomeindignation when they hold down the "SHOUT" button.
- The AI's Retort: I gave my characters a voice—a very, very judgmental voice—thanks to the incredible ElevenLabs API. Each character has their own personality, voice ID, and a custom-built library of infuriating phrases.
- The Chaos Engine: The real magic is the interruption mechanic. A simple but evil setTimeout loop runs while the user is talking, giving the AI a random chance to cut them off. It's rude, it's chaotic, and it's the heart of the game.
Challenges we ran into
my biggest challenge was "The Great Interruption Dilemma." Making an AI that could interrupt the player without the browser collapsing into a black hole of overlapping audio contexts was tricky. I had to carefully manage the audio states to ensure the boss could talk over the player, but the player had to wait their turn.
Accomplishments that we're proud of
done it 20 minutes before the deadline
What we learned
- Timing is Everything: I learned that the line between a "hilariously timed interruption" and a "broken, cacophonomemess" is razor-thin.
- The Power of Voice: The ElevenLabs API is terrifyingly good. Hearing a robot Karen condescendingly sigh at you feels more real than we'd care to admit.
- There's No Winning: Most importantly, I learned that even with the power of code on my side, Brenda from the DMV is probably still unbeatable.
What's next for Blame Game
more characters to beef with, i guess

Log in or sign up for Devpost to join the conversation.