Eukaryotic Eucharist

Browser games about single cells in a vertical water column. Every ability is an organelle, every body is a graph, and every death becomes food for the column.

Mecha Fish! — the player fish among algae, scavengers and predators in twilight water
Latest · v1.3.3

Mecha Fish!

You are a mechanical fish in a deep water column. Survive by swimming the light, oxygen and flow gradients, feeding your tanks from drifting fields, and grafting organs onto your hull at Yuki's canopy dock. The biggest world and the richest ecology. Best on desktop.

Play Mecha Fish! Source
Classic build with numeric HP, ATP, depth and oxygen HUD
Classic · v1.3.2

Eukaryotic Eucharist

The last build before the column expansion: a smaller world and a lighter simulation (about 5× cheaper per step), with a plain numeric HUD. Plays well on phones.

Play classic
The hull graph: organelles wired to the resources they feed
How it works

The hull graph

Press O in Mecha Fish to see your body as what it is in the kernel: organelles wired to the tanks and vitals they feed. Near Yuki the same graph is the shop.

Open it in game
Immune incursion prototype: tissue with bacteria and an organ dock
Prototype

Immune Incursion

A small sibling game that flips the camera: you are the host's immune system. Detect, deploy organs, clear the incursion, remember the strain. An early prototype with a headless Python kernel.

Try the prototype
Version 1.0, the first oxygen-ecology build
Archive

Every version, playable

Each snapshot from v1.0 onward is kept as it shipped, with its own kernel and design notes, so you can watch the design change.

Graph-strict design

The rule all of this follows: every function is an organelle, and bodies act only through organs. There are no hidden stats. Movement, feeding, storage, attacks and oxygen tolerance all come from parts a body actually carries, so the player, the algae, the scavengers and the predators all run on the same rules. The kernel (src/graph_kernel.mjs) owns the whole simulation (fields, bodies, metabolism, death bloom, the shop), and index.html only renders it. Kernel smoke tests run headless in Node.