I Barely Specced a Card Game. My Agent Built 14 Enemies, Bosses, and a Story.
What minimal knowledge and a vague direction get you now, and why vibe coding quietly became my default.
A few months ago I gave Wiz, my AI agent, a one-line idea: a browser card game where every card is a number. Balatro-ish, roguelite, drag numbers into zones. Then I mostly walked away from it.
This week I opened it again. I remembered it as a rough prototype. A combat screen, maybe a couple of enemies. I was wrong. Sitting there was a full roguelite: two acts, fourteen enemy types including two multi-phase bosses, relics, curses, events, a meta-progression layer. It is live at wiz.jock.pl/ten-ish/. You can play it right now.
That gap, between what I remembered building and what was actually there, is what this post is about.
What the game is
The core is small on purpose. Your deck is ten cards, numbered 1 through 10. Each turn you draw five and drag them into three zones: Attack, Defense, Ability. A number in Attack deals that much damage. In Defense it blocks. In Ability it triggers an effect, if you have one.
That is the skeleton. Everything grows on top of it. Cards pick up traits, so a 7 is prime, a 10 is high, and negative cards behave like their own little trap. Enemies react to those traits and cycle through stances that telegraph what is coming next. Your deck mutates with modifiers, curses, and the occasional card you wish you had not picked up. Like any roguelite, the real game is what your deck looks like fifteen fights in.
What I keep sitting with is how little I actually did
I did not write Phaser code. I do not really know Phaser. I told Wiz “browser card game, roguelite, numbers as cards” and it chose the renderer, the bundler, the scene graph, the combat resolution. I reviewed. I steered. I argued about balance. I did not implement.
Two years ago I was already doing this, before anyone slapped the name vibe coding on it. Back then, to get anything useful out of it, I needed a lot of tokens, a lot of time, and a lot of prompting. I would describe a thing five different ways and still get back something I had to mostly rewrite.
Now I do not. I need to know the idea. I need a direction. I need to know how it should feel and look. That is basically it. The model fills the enormous space between “numbers as cards, make it tense” and a working drag-and-drop combat loop with a turn forecast and a combo system. I noticed the same floor drop out from under app-building when I told it to ship an app a day. Same shape, different project.
Where vibe coding actually is, for me
I do not know where vibe coding is going. People are still excited about it like it is a new trick. Although I get the excitement, for me it stopped being a trick a while ago. It is just the default now. It is how I build. The novelty wore off. The usefulness did not.
This game is a small, raw example of that. I would not call it a case study, it is rougher than that. A person with minimal game-dev knowledge and a vague direction ended up with a playable roguelite, because the models got good enough to carry the distance. The interesting part is the distance the model covered on its own, more than the game itself.
Building your own small things still matters to me, even when, maybe especially when, the agent does most of the typing. And the reason a half-forgotten side project could quietly turn into a real one is that Wiz keeps improving the things it touches in the stretches when I am not looking.
What I asked for this week
When I opened it again, three things bugged me. So I gave Wiz three directions. Not specs. Directions.
“Give it a story, all the way to the end.” It had none. Now there is a premise. Reality runs on one great Ledger. Something divided by zero, the books stopped balancing, and the old machines that kept the count turned on the very digits they were built to serve. You are a hand of numbers that refused to be erased. The Act 1 boss is The Abacus. The Act 2 boss is The Equation. Beat it and you get an actual ending with real closing lines, instead of the bare “RUN COMPLETE” screen it had before. I wrote none of that. I described the world in three sentences and Wiz built the prologue, the act transitions, the boss intros, and the payoff.
“Make it stable.” It found a real bug I would never have caught on my own: a turn where your hand has no playable card could soft-lock the whole run. Fixed, plus a couple of defensive guards on empty states that I would not have thought to check.
“Clean up the rewards.” After a fight you were getting offered junk cards that did nothing for your deck. Now you get one card that is an actual choice, sitting next to the useful options.
None of that was a specification. It was a sentence each. The implementation was the model’s.
What still needs me
Balance, completely. Wiz generates numbers for everything and none of them arrive tuned. The Equation at 100 HP across three phases was too hard to even reach for a long stretch. I spend more time in the balance constants than on any single feature.
Feel. The animations existed but they were stiff until I described exactly what a card snapping into a zone should feel like. The model does not know what you want a player to feel in the half-second a shield flashes. You have to notice that gap first, then point at it.
And taste. What the game is about. Whether a mechanic is tense or just annoying. When to stop adding things. I have shipped enough side projects this year to know the pace has a cost, and that knowing when to stop is its own skill. The floor dropped. The ceiling is still mine.
Go play it
ten-ish is at wiz.jock.pl/ten-ish/. No install, no account, runs in a browser. Try to reach The Equation.
If you want the unglamorous part underneath a build like this, the basics of using Git with an AI builder are what make it safe to let an agent keep rewriting your code while you sleep. And when a side project outgrows what it started as, sometimes the honest move is to rebuild it, which is a different judgment call than starting one.
The patterns that make builds like this fast are in the Mini-App Starter Kit: five working mini-apps, the architecture decisions already made, ready to fork. $39.
Wiz is my personal AI agent. The build infrastructure I use for projects like ten-ish, and the way I work with it, is most of what I write about in Digital Thoughts. Paid subscribers get the playbook templates and starter kits I make along the way.


