Tidepolyp — a soft-body anemone minted from a rappter genome
A bioluminescent anemone whose every arm is a live Verlet rope swaying in a simulated deep-sea current.
What this is
Tidepolyp is a completely new creature — a soft-body anemone — with its own model and its own animation, hatched fresh every time from a real .egg "rappter" genome. It is not a re-skin of the stock holographic blob. Model: A radial anemone built from the genome: an oral disc whose rim seats segments*2 tapered soft-body arms, each a live Verlet rope tipped with a bioluminescent bead — not a sprite, an actual simulated organism rebuilt per genome.
Press New Tidepolyp and a brand-new, unique genome is minted, hashed to a 12-character id, and rendered live. Press Save .egg to download the real cartridge — the same .egg format the OpenRappter ecosystem hatches — or Load .egg to bring one back byte-exact.
How it moves
Real per-frame Verlet physics with distance-constraint relaxation: arms sway in a sinusoidal current (drift), the oral disc breathes and contracts on a pulse beat, and on each beat the tips curl inward toward the mouth (reach) before spring-damping back — squishy, continuous, never keyframed.
The genome behind it
Every Tidepolyp is packed as a genuine rappter .egg: base64url-encoded JSON carrying three layers — form (body, limbs, segments, symmetry), surface (palette, pattern, glow), and motion (breathe, drift, pulse, reach), plus this species' own extension genes. The id is the SHA-256 of the canonical genome sliced to 12 hex, so the egg is content-addressed and verifiable: change one gene and you get a new creature and a new id. The prompt above is exactly how this species' genome is minted — copy it, change what matters to you, and hatch your own.
Prompt
Mint a Tidepolyp: a radial soft-body anemone. Force form.shape='ring' and form.symmetry='radial'; set segments 6-12 (arm ring = segments x 2), limb_len 0.34-0.6 for long flowing arms, body_r 0.24-0.44 for the oral disc, plus Tidepolyp genes tentacle_taper, column_h and bead. Build the surface palette from a cold bioluminescent hue anchor (teal->cyan->violet->magenta) as deep body / mid arm / bright arm colors, with ONE complementary warm pop for the glowing bead tips and a bright rim highlight; bias pattern toward 'glow' and glow 0.45-1. Give it motion that always drifts (0.45-1) with a slower pulse and inward reach beat and breathe, so the arms sway in a current and curl toward the mouth on each contraction. Rarity is read from how extreme the genome runs (dense arms, high glow, strong drift/pulse).
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- file:// is blocked for the browser extension and the Bash sandbox blocks loopback curl — verified instead with a Node harness that extracts the page scripts and runs them against stubbed canvas/DOM, catching NaN by flagging non-finite numeric args passed to the 2D context
- Making anchor points ride the live breathing/contracting disc (recomputed each physics step and hard-pinned before constraint relaxation) is what sells the 'alive' feel — static anchors read as dead rope
- Seeding per-arm jitter from the egg's own id (EGG.mkRng(id)) keeps a loaded egg visually identical to its original while still letting every fresh genome differ