Brick & Mortar

How It's Made · Step 13 of 27

Step13

One mission at a time - the mission maker and the bots that test it

· 4 min read

campaignclaudeagentstesting

Brick towers with smoke and a fireball rising behind them.

By the middle of October the campaign had seventeen missions: fourteen on land, air and sea, and three naval ones. Each one plays from start to finish on Easy and has a scripted proof. This step is about the pipeline that got them there, which is the thing we are most pleased with, and the bots that make it trustworthy.

Five roles, then one

Missions 2 to 4 were built by five roles in turn: the writer wrote the script, the mapper made the map, the modeller made the missing pieces, the engine added what the director could not express, and QA tested. It worked and it was slow, because each handoff costs a conversation.

On 29 September we wrote a single new role, the mission maker, and handed it the whole job for one mission at a time:

  1. The map and the placement layer. Reuse an existing map where the story allows, otherwise generate one. Every name the script uses is a named place on the map.
  2. The mission file. A small generator script writes the mission as data: every beat on its trigger, the objectives, the hints, the radio lines, the lose rules, the checkpoints and the unlocks.
  3. Voice lines. If the recordings exist, import them. If not, the lines play as subtitles only, and the report asks for the recording.
  4. Pieces. Reuse the approved meshes. If one is missing, use a labelled placeholder and file a handoff to the modeller. Never build models.
  5. Code, only when the director cannot express a beat. One small hook, deterministic, one compile for the whole batch.
  6. The proof, on Easy.

The most important instruction is the one in the first line: copy the patterns that already work. Missions 2 to 4 are the examples. The mission maker is a mid-sized model at medium effort, and it is good at this because the work is mostly imitation with care.

The proof

A mission is not playable until a script says so. The harness issues the same commands a player would, and is forbidden from cheating: no free credits, no kills, no damage. For each mission we require:

A grid of screenshots from a scripted run of a snowy mission, one frame at each story beat
A beats board: one frame at every story beat of a scripted Easy win. We look at this before we look at the mission.

On 29 September all 43 campaign routes were passing on Easy. By the end of the month all thirteen missions of the first story version played start to finish.

The newcomer bar

"Easy" has a particular meaning here. A player who has never touched the game, and only follows the on-screen hints, must be able to win. Our QA role plays that person against each build. When the ninth mission failed that test, the answer was not to make the enemies weaker. It was to change what the mission asks: a hold-the-hill finish instead of a hunt across the map. The problem was pacing, not toughness.

What broke

Honest accounting

Our campaign is proved on Easy only. Medium and Hard are copies of Easy until a final balance pass. Everything that needs a human, such as whether a mission is fun, is still the owner's job, and the owner plays every build.

What we would do differently

Try it yourself

When you find a job you have done three times by hand, write the role that does it, point it at the three examples, and require a proof it must produce every time.

Next: Cutscenes - Unreal puppets, then Grok Imagine, then DaVinci (18 October 2026)

Start at Step 1All 27 steps

Written afterwards from our project notes and commit history; dated to when the work happened.