Young Scientists
Outbreak Hall
A fire spreads ONE step every turn — and you only get a few shields per turn. So you can't wall the flame head-on (it floods around a half-built wall); you have to build a firebreak AHEAD of it, where it's going, and close it in time. A cheap wall near the fire saves a corner; a longer wall further out fences a whole wing — if you can finish it. Reading that race is the real puzzle, and "grab the most you can save right now" is provably the wrong move. Behind the fun: the Firefighter Problem and how real crews cut firebreaks. Keep the MOST safe to win. Solo vs four bots + live whole-class rooms. Prefer trees? Switch to the wildfire skin.
For Educators
Built for the classroom
The real, DYNAMIC FIREFIGHTER PROBLEM (Hartnell 1995) — NP-hard, and genuinely requiring multi-turn planning, not pattern-spotting. Each turn the fire spreads one ring to every neighbour; the player permanently protects only f cells per turn (f is the difficulty dial: f=2 is the on-ramp, f=1 the deep regime). Because the fire races your wall, you must build a firebreak AHEAD of it — trading a cheap near cut (saves a corner) against a wider downstream cut (saves a wing, if you can close it in time). The greedy reflex — protect where the fire goes next — is provably suboptimal (on trees it saves only ~½ of the optimum), and the best one-shot "obvious cut" never matches the dynamic optimum. We MEASURED this: every shipped board is mechanically gated so the optimal PLAN beats both greedy and the best static cut by a real margin AND needs ≥2–3 turns of lookahead — an instance a kid can solve in one obvious move can never ship. The reveal shows three numbers — block-the-flame vs the obvious cut vs the best plan — so kids SEE why planning beats reflex (e.g. 12 vs 1 vs 35 of 44). Wind, weighted treasures (triage under a clock), and terrain layer on top. The gated theorem names the Firefighter Problem, real wildfire firebreaks / defensible space, the speed-vs-resources race, and herd immunity (1 − 1/R₀). The exact optimum (par + the boss's firebreak) is computed by branch-and-bound and proven correct by our check (22 green: the restricted solver equals full brute force, every board passes the difficulty gate, trivial boards are rejected). Designed via a 10-agent research workflow with an empirical hardness probe.
Grades 3+ · halls 5×6 to 7×10 · the fire spreads one step/turn, you place f shields/turn (2 at gentle/standard, 1 at tough/brutal) · solo is 1v1 vs four bots; out-plan ⚡ The Fire Marshal (the exact optimum) on Tough/Brutal for the Fire Marshal badge · live rooms replay every kid's firebreak at the reveal. A fire-timing overlay shows when the fire reaches each spot. Non-disease wildfire skin in Settings.
Three ways to play
-
Play solo
Each turn drop a few shields ahead of the fire, then watch it advance one ring. Bots: 🚨 Reflex Ranger (sprays where the fire is) → 🧯 Hose Hank (the greedy trap — grabs the most right now) → 👷 Foreman (plans ahead, strong) → 🧠 The Fire Marshal (the exact optimum). Out-plan the Marshal on Tough/Brutal to earn the badge + the Theorem.
-
Host a Room
Everyone gets the SAME hall and plays the fire out secretly; at the reveal every fire runs at once on the projector — the best firebreaks win. Pick the difficulty + hall size.
-
Join on any device
Drop up to the budget each turn, then let the fire spread one step. Turn on 👁️ Fire timing to plan where to build the break.
Run a live class in 5 steps
- Open the Room — pick the difficulty + hall size; share the 4-letter code / QR / link.
- Students join on any device; everyone gets the SAME hall.
- Each kid plays the fire out, dropping a few shields per turn to build a firebreak (secret until the reveal).
- Ask the room: why can't you just block the fire where it IS right now?
- Reveal the science (the Firefighter Problem, real firebreaks, the speed-vs-resources race, herd immunity) and send the curious to the Dojo's Fire Lab.
Tip: host on a laptop or projector (the big screen shows the code, QR and leaderboard); students join on their phones or laptops.