david clausen
PROJECT / PLAY & EXPERIMENTS ·

A passing test can hide a fragile game

Axolotl Tower Defense is a Roblox campaign with five defenders, three chapters, and a balance problem that became more interesting after the tests passed.

I enjoy building games and stories with my kids. Making this game work has also produced a useful little record of experimentation.

Status · September 2026: a local single-player campaign, with automated balance runs and a Roblox Studio bot check. Independent human playtesting remains the next test; this is not a published game link.

Source-derived top-down diagram of Moonlit Marsh: the enemy route bends around eight garden sites before reaching the sanctuary.
Moonlit Marsh, drawn from the game’s map configuration. This is a schematic of the actual path and garden coordinates, not a gameplay screenshot.

What the baseline said

The September 4 balance pass ran four bot strategies across three seeds, three difficulties, and three chapters: 108 runs. Each cell below contains 12 attempts. These are bot results under a defined harness, not estimates of player win rates.

Baseline bot wins out of 12 attempts
ChapterEasyNormalHard
Pearlwater12/1211/126/12
Riverbend12/129/126/12
Moonlit Marsh10/129/123/12

The normal-difficulty baseline had several viable strategies in each chapter. Two identical baseline runs made the result reproducible. That is useful evidence that the scripts and tuning agree, but it says little by itself about whether a new player understands the game or enjoys a loss.

Then add 10% enemy health

Normal-difficulty bot wins out of twelve: Pearlwater 11 to 10, Riverbend 9 to 8, Moonlit Marsh 9 to 3 when enemy health increases ten percent.
The same strategies and seeds, with enemy health multiplied by 1.1. Download the aggregate data.

Moonlit Marsh fell from nine wins to three. Only one strategy remained viable by the project’s threshold. The baseline passed, yet the next step in difficulty exposed a narrow margin. That makes the sensitivity test more useful than a single green result.

One Roblox Studio bot run also completed Moonlit Marsh Normal in 616 seconds with 65 health remaining. Its matching headless run took 633 seconds and ended with 54 health. This is a useful check against the actual engine, with visible differences that still need explanation. It is one bot comparison, not a human playtest or proof that the two environments are equivalent.

What I would test next

Watch a person encounter the first map without a narrated solution. Can they tell where enemies will go, what an upgrade changes, and why the sanctuary took damage? Then revisit the late campaign: does a loss suggest another plan, or just a stronger version of the same plan?

Balance needs room for discovery. A game that admits one narrow winning script may satisfy an automated check while giving a player very little to do.

Evidence: September 4, 2026 balance and Studio playtest records; 108 baseline runs and 108 health-probe runs. Figures here are derived from those recorded runs. No new human-playtest result is implied.

Related: the DataInk composition study uses this same dataset, and PRE asks a similar question about what a successful aggregate hides.