Saving Humanity with Agents.
A hidden game, a bad idea, and why I built it anyway!
Well... tiny pixelated humanity.
Did I go too far?
As part of my Agent State of Mind series, I was updating my personal website and decided it needed a hidden game.
A Galaxian clone seemed like a sensible place to start.
Fifteen minutes later it was working.
Then curiosity got the better of me.
What started as a Galaxian clone became Frogger.
Then Defender.
Then I started asking:
“What if I went further?”
Eventually Scoops was born.
A 3D rescue game inspired by Zarch on the Acorn Archimedes, where you fly across an alien world trying to save tiny humans before they get eaten by dogs.
Completely unnecessary.
Entirely ridiculous.
But made me smile.
Can I justify the effort?
Five years ago the answer would have been no.
Not because it was technically difficult.
Because I would never have justified the effort.
No business case.
No roadmap.
No deadline.
No profit motive.
So, before AI, no way would I have added a retro hidden game to my site.
And that’s what fascinates me about AI-assisted development.
The effort required to move from idea to implementation is changing.
Ideas I would previously have dismissed as not worth the time now seem entirely reasonable.
Will it mean I write more software?
Perhaps.
Because this exploration feels much closer to that sense of wonder I had when I first started programming, when anything was possible you just had to work it out.
The cost of experimentation has collapsed.
And we now have the ability to explore ideas just because they are interesting.
The Agent State of Mind isn’t about writing software faster.
It’s about removing the distance between imagination and implementation.
So now there is a hidden arcade game on my personal website.
Humanity is, apparently, depending on you.
Head over to https://rajcurwen.com, and see how many tiny humans you can save.
One final question:
Have AI tools expanded your imagination, or are they simply producing more output?
Oh, and more importantly:
Should I add a leaderboard, different types of attackers, a cityscape, dogfighting with dogs flying in hot air balloons... 😁
What Actually Happened
One of the advantages of having everything under source control is that I can reconstruct exactly how Scoops emerged.
The timeline below comes directly from the git history.
What I find interesting is not the speed, although that is certainly part of the story.
It is the progression.
The game was never designed up front.
It evolved through experimentation.
Galaxian became Frogger.
Frogger became Defender.
Defender became Scoops.
Scoops became a 3D world.
Then came dogs, drones, biomes, rescue missions, cameras, sound, mobile controls and all the other ideas that seemed interesting at the time.
The result was not a carefully planned product.
It was curiosity given room to explore.
And that, perhaps, is the real point.
The timeline below shows how quickly that exploration unfolded.
Timeline
Here’s the actual timeline, reconstructed from git history (commit times are local, on your machine):
The build, as it actually happened
Long before — the old site
2025-04-14 — original site uploaded.
2026-03-24 — one “update” commit. Then nothing for ~10 weeks.
Mon 1 June 2026 — the rebuild (morning → afternoon)
11:41–15:58 — the real work: repositioned the site around Nearfield.ai, added the Au product page, the Human page, switched to “Raj Curwen PhD”, reorganised Projects (Viper / ADEPT / 1990s work),
moved to public/ + deploy.sh for AWS, did SEO/responsive/perf passes. This was a CV/portfolio job — no games yet.
Mon 1 June — the game appears (late afternoon)
16:07 — 🎮 the Galaxian moment. “Add idle attract-mode (Galaxian-style demo) to the start page.”
16:18–16:37 — fiddling with the “fun” hotspot position (top-right veil → header nav → far-left → pinned top-left).
19:54 — generalised attract mode into a pluggable game harness.
20:11 — “Make Frogger and Defender genuinely good.” (Note: there were two other games in between Galaxian and Scoops.)
Mon 1 June — Scoops is born (evening)
20:33 — 🛸 ditched Frogger/Defender, created Scoops (original 2D rescue game).
20:44 — added Scoops 3D (Zarch-style).
20:49 → 23:44 — a three-hour 3D sprint: smooth scrolling, banking, trees/mountains, an 8-bit shuttle, chase camera, yaw camera, grappling lines, 30 survivor variants, boats, and the cockpit cam
dashboard.22:58 — killed the 2D version; “Scoops 3D” became Scoops.
Tue 2 June — making it playable & deep (morning → afternoon)
08:47 — let the user take control and play (until now it was attract-only).
09:21–12:04 — canopy/glass-bubble redesign, exhaust fixes, then an OO renderer refactor (Camera/Mesh/Face/Grapple, Terrain/Citizen/CamBay).
13:44 — 🐕 Dogs of War + hunter drone swarm added — the core conflict.
14:07–15:20 — drones become Colonial Vipers, eject one-at-a-time from a belly magazine, self-refill to a swarm of 5, hangar turntables, radar plotting.
15:36–16:04 — turned it into a finite mission (Save X of Y, timer, results screen).
16:04–16:50 — biomes: desert + cacti, snow + firs, rivers/wetland; tree/dog pathfinding.
17:00–17:17 — procedural sound (engine hum, “yay” on save, drone whoosh), final balance pass.
Tue 2 June — ship it (evening)
20:11 — mobile: on-screen touch controls + a “Play” menu entry. Same commit added the Substack post draft and the release instructions.
20:19–21:09 — touch/iOS hardening (kill link-preview, lock input) and a compact touch HUD


