Virtual-pet and sandbox toys are either scripted set-pieces or full game engines; there's little in between where a player just pushes blocks together and watches behaviour emerge. Hard-coding every pairwise interaction is what kills these projects.
02 — Fix
A 2D sandbox of draggable square "frames", each housing a stickman resident with a job and personality — frames snap, connect and interact through a declarative rule matrix instead of bespoke code per pair.
Exhibit 012-AThe “Weather & growth” scene — sun, rain and fog frames feeding a neighbouring garden through the interaction matrix.Exhibit 012-BA supply chain: water, orchard, tavern, bakery, windmill and kitchen frames passing resources between residents.Exhibit 012-CThe “Volcano” scene — a heat/eruption frame casting its plume over water and garden frames alongside it.Exhibit 012-DA festival: a music frame with a live equaliser drives dancing stickmen across tavern and beach frames.
03 — Proof
Frame types
41, including 7 weather frames
Interaction matrix
~175 declarative pairwise rules (fire burns the library, rain grows the garden)
Physics
inertial ragdoll residents with world-down gravity under frame rotation
Personality traits
6, assigned at birth and kept for life
Logic tests
15, on Node's built-in runner with zero dependencies
Headless verification
0 page errors across the build
04 — Method
.NET 10 Blazor Server hosting an all-JavaScript simulation on a single canvas; built by feature agents per subsystem (physics, characters, rules, render) and verified out-of-process with puppeteer reading live sim state.