6 min read

Behind the Scenes: Special Bylaw Unit's First Week

Behind the Scenes: Special Bylaw Unit's First Week

One of the things that keeps surprising me about building games with AI is how fast a project goes from "I have a weird idea" to "oh no, this thing is alive now." Special Bylaw Unit hit that point somewhere around day four — one minute I'm generating expression sheets for a suspicious-looking sheep, the next minute there's an actual jury box full of procedurally-generated animal jurors staring back at me from the screen, each one with their own personality and biases and the unsettling ability to side-eye the prosecution. You don't really know what you're building until it starts pushing back, y'know?

Wait, What Even Is This?

So here's the pitch: it's a courtroom drama. With animals. And the jurors are all generated by an LLM — every single one has a name, a backstory, a species, and a set of personality traits that determine how they react to the case you're presenting. You, the player, are the defense attorney, and your job is to read the room, adapt your arguments, and convince a jury of procedurally-generated animals that your client is innocent.

It's Ace Attorney meets a procedurally-generated bestiary. Or maybe it's the love child of a Phoenix Wright game and a zoo's HR department. I'm still figuring out the elevator pitch, honestly — but the gist is you're the defense, the animals are the jury, and every trial is a fresh puzzle of personalities.

The Art Avalanche

If you'd looked at the repo on the morning of August 3rd, you would've seen a pretty standard fullstack app — React Native frontend, Python backend, a login screen with a walking fox that I was way too proud of. By the end of that same day, the project had ballooned by over 1,300 image files. One thousand three hundred.

Here's what happened: I built a script that takes full-body character art and slices out individual headshots, then crops each one to a specific emotion — calm, angry, shocked, smug, nervous, thinking, bored, judgmental... the list goes on. Fourteen emotions per character. Then you multiply that by roughly forty different animal species, times male and female variants for each one, and suddenly your repo has more PNGs than lines of code by a factor of about a hundred.

Was this the most efficient approach? Probably not. Did I spend an entire day just watching a Python script chew through animal art? Absolutely. But here's the thing — when you're building a game about reading a courtroom, faces matter. That juror in the back row who goes from "bored" to "interested" when you present a key piece of evidence? That's the game. That's the whole thing. Without the emotional granularity, you're just presenting text at a wall of static sprites, and nobody — not even procedurally-generated owl attorneys — wants that.

The Fox on the Login Screen

Before the art avalanche, there was the fox. I'd built this login screen with a dual-layer parallax background — the kind where the foreground scrolls faster than the background to create depth — and at the center of it all was this animated fox, walking in place, tail swishing, looking at you like you're already late for court. I set the whole thing in the Special Elite typeface, which has this wonderful typewriter-meets-legal-document vibe, and suddenly the app had a personality.

It's a small thing, a login screen. Nobody's going to sing its praises in the App Store reviews. But it set the tone for everything that followed — this wasn't going to be a sterile utility app, it was going to be a place. A courtroom with character. The fox was the first hint that the animals in this game weren't just decoration; they were the whole point.

Where the AI Actually Lives

So all the animal art is great, but the real engine here is the LLM integration on the backend. Every juror in SBU is generated fresh — the game calls out to an LLM with a prompt that specifies the species and a set of personality dimensions. The LLM returns a full character: name, background, biases, emotional baseline. Then those characters get seated in the jury box with their matching headshot sprites, and suddenly you're not looking at a grid of identical NPCs — you're looking at six individuals who will each react differently to your case.

The Daily Docket feature, which landed right around the same time, gives the player a persistent case history. Cases get saved to a database with all their details — who the defendant was, which jurors you drew, how the trial played out — and there's even an LLM-powered keyword inspiration system that suggests themes and angles for your arguments. It's the kind of feature that turns a one-off game session into something you want to come back to; your docket becomes a scrapbook of every animal you've ever tried to convince.

So Where Are We Now?

By the end of the first week — and I'm writing this on day twelve, so we're still very much in the thick of it — the game had a working jury selection flow, a courtroom UI in React Native, a full database model for cases and jurors, and enough animal headshots to populate a small town's worth of courtrooms. The Crown Prosecution Start mechanic, where you actually begin arguing your case and the jurors react in real time, was the last thing to land before I paused to take stock.

Is it a game yet? Almost. Is it one of the strangest things I've ever built? Without question. Is there something deeply compelling about watching a procedurally-generated lion in a business suit raise a skeptical eyebrow at your opening statement? Heck yes.

I'll be sharing more as the courtroom takes shape. For now, consider this a summons — court is in session, and the jurors are very judgmental.

Special Bylaw Unit is in active development and not yet available. Follow along here for more behind-the-scenes as the game comes together.