Overview
The Fish & Aquarium Simulator is a digital aquarium where the fish aren't drawn -; they're grown. Each one is procedurally generated from a genome of 56+ genes that drive everything about it: body length, height, width and taper; fin sizes; color; pattern; and behavior. You catch fish, breed them, and selectively evolve the population over generations, watching traits recombine and mutate into creatures nobody designed by hand.
It's a loving homage to the classic Maxis title El-Fish -; right down to reading and writing the original 1548-byte ROE ("Rib Of Eve") fish files, alongside a modern JSON format. It also works as a hands-on lesson in genetics and selective breeding, with a teaching guide to match.
How It Works
It's pure HTML5/CSS/JavaScript with no dependencies. The simulation, genetics, and ROE import/export live in an engine module; rendering is delegated to a separate, stateless module that generates each fish, plant, and rock as SVG. A seeded RNG (mulberry32) makes the scenery reproducible from a seed, and the genome decodes into roughly 800 variable parameters across body, fins, color, and behavior.
- 56+ genes → ~800 tunable parameters per fish, recombined on breeding and mutated on reproduction.
- Backwards-compatible with original 1548-byte El-Fish ROE files, plus a modern JSON ROE v2.0 format.
- Several biome presets (planted tank, etc.) that set the water column, lighting, and gravel palette.
Current Status
Archived -; it's a finished, self-contained piece that still runs in any modern browser. It got a touch-up in spring 2026 but the core was built back in summer 2025, and it's parked rather than actively developed.
- Complete: catch, breed, evolve, save/load fish via ROE, and a documented teaching unit.
- Pure client-side build, no server, opens straight from the HTML file.
- Done and dusted -; left as-is unless I get the itch to add new biomes or traits.