Brave the Dark: I did it!
Earlier this year, it seemed like everyone I knew was 1. unemployed and 2. “learning how to vibe code.”
The vibes were bleak, but folks seemed excited (slash existentially threatened) by learning something new (or else fade into industry irrelevance). A designer showed me a data dashboard she made. An account guy showed me a sales pipeline dashboard he made. A friend showed me his email/task dashboard he made.
And look, I can get excited about a dashboard. I once spent a year making a big manufacturing company’s client data dashboard! In real time you could find out how many thousands of pounds of snack crackers were being produced in what factory and where your orders were. There was lots of complex data that had to be pulled apart and sorted through and —
— and yeah, look, dashboards are useful and great, but they’re also fucking boring. If they’re useful, they become infrastructure (aka invisible). If they’re not, then it’s basically the digital equivalent of those big souvenir popcorn buckets: Sort of pointless? Sort of confusing? Why are we eating popcorn out of a Dune worm, anyway?
Point is, if the cool new trend for marketing/tech people is to start coding dashboards in their free time, I’d literally rather scrub my toilet.
As I’m sure you’ve surmised, this is a launch announcement for my first video game, Brave the Dark. It’s a cozy-horror visual novel with multiple endings and a retro GBA aesthetic. The game is free, can be played in browser, and takes ~10 minutes to play, so go play it. I’ll place a large button later on the page for you to click also.
How it went down…
Setup & Script: learning how to ask questions when you know nothing at all
First I took an old screenplay for an animated short that I’d written and shelved from back around 2020. Then I asked Claude what to do, and that led me to Ren’Py (a python based visual novel game engine, aka, the backbone of what I made). Then I set up a bunch of files in ways that are mysterious to me (I did not learn how to code in Python — I learned how to ask Claude specific questions about coding in Python and copy/paste its responses into the correct files).
Claude generated a base template from the script and wrote SO MUCH CRAP. I yelled at Claude to not rewrite my work. It did better (not great). It did suggest branching endings and things which I thought were cool, and ultimately I went in and manually overwrote everything directly into the code. Turns out that Python isn’t that hard to read once it’s already filled in (as long as the stupid " symbol doesn’t change to a “ and break everything). Eventually the script was fixed and done.
Art: learning the zen joy of pixel art
I knew I’d do the art myself, but I was curious what Claude would do for placeholder art. It was truly something to behold (pictured below). The actual art ended up taking ~4 months of my spare time, and was done in Procreate with pixel art brushes - first the backgrounds (roughly 20 images, and two animated backgrounds), & then the character sprites (4 characters, only 1 expression of each). For the curious, here’s what Claude started me with:
SFX & Music: learning to let go of the idea that you might be a secret musical prodigy
I got SFX from freesound.org and spent a weekend losing my mind about different “twig snapping” sounds and “dog barking” sounds. I didn’t want Hugo to sound like a chihuahua.
Music is where I got stuck. I didn’t want AI to just make music whole cloth, because I was in deep now. I don’t really like the idea of AI music and I am a prideful woman. Unfortunately I also have the musical capability of a gerbil (SEVEN YEARS of piano lessons and I can only kind of play Für Elise, and nothing else) — let alone composing music from scratch.
Enter: my husband Brent. He’s one of those math-music brain people who knows what note something is when he hears it. Because I didn’t want to spend hundreds of bucks on software or equipment, we ended up jamming together on an old keyboard controller in GarageBand to form the core melodies of the 5 song soundtrack. This part involved me doing a lot of scatting and Brent trying to turn that into literally anything. Then I’d go get a snack, come back, and he’d have a melody that we’d record.
Once recorded, I realized I have neither the skills nor interest in learning to edit music, so after a lot of hemming and hawing (and trying like 3 free online tools) we ultimately put the melodies into SunoAI to see if it would clean them up and maybe add some polish. SunoAI was really surprisingly strong right off the bat at music generation from a provided audio file. That said, their music editor is either a piece of shit or my lack of editing knowledge made it meaningless to me. Finally, we creative directed Suno to land on versions of the songs that felt right to the game vibe while maintaining our original core melodies.
Debugging: learning to not panic and just keep going
Y’all, the developers were not joking about the tribulations of debugging. Things broke a lot, Claude gave imprecise or inaccurate answers, things broke more. Right when I thought I could launch, the in-browser version created a whole new host of issues. The more I panicked, the more I made mistakes, but keeping calm (and having a backup) did wonders. I have questions for vibe coders about how they’re not crashing their whole platforms from one little mistake.
Final thoughts
It’s very cool that AI made this project possible in the first place, and it’d never have occurred to me to try it otherwise. But once I was invested, I found myself knocking up against the inverse relationship between generation and pride in ownership. In code, I made something I don’t understand - I’m proud of the product, but not proud of the code per se, and it doesn’t feel like it matters to the creative integrity of the work. With the music, it actually felt destructive to the pride I had in the art and script to have a fully generated soundtrack, and it became a little better when the AI was used as a tool for enhancing something that we’d already made.
A not small part of me thinks that’s because I don’t know enough about music to make AI a subordinate in bringing forth my vision — unlike in writing, art, and to some extent, code. The more you’re already an expert at a subject, the easier it is to use AI as a speedy assistant for little things and get good results. When you’re flying blind, you end up relying on/being guided by its (generically trained on the mean) expertise, which it inherently shapes your vision of the final work. In other words, in the areas about which you know the least, it’ll give you kind of boring results.
And maybe that’s why everyone’s making these damn data dashboards.