The Living Bank
A heron working the shallows, fish holding in the current, birds crossing
over. None of them is being stepped forward. A heron's whole life — every
place it has stood and will stand — is a function of t, so it has no
position that has to be remembered between frames. Jump to a billion and it is standing
exactly where it should be, having never walked there.
The shallows
Herons wade and wait and move on. Fish run the channel. Everything is where the clock says, and nothing is where it is because of where it was.
A life with no state
Give a heron a home square and a clock. Its walk is a chain of short legs; which
leg it is on right now is floor(t / legLength), and where that leg starts
and ends is a hash of (heron, leg). So:
where(heron, t) = between( hash(heron, leg), hash(heron, leg+1) )
Nothing carries over. The heron at t does not depend on the heron at
t−1, which is why the jump buttons work and why two people watching
the same seed at the same tick see the same bird in the same puddle.
Fish run the channel the way the droplets do in Flow — distance downstream from a phase, wrapped. Birds cross on a straight line, also wrapped, at a height the hash gives them.
What this would be worth in a game
No creature updates and no creature saves. A world with ten thousand animals in it costs the same to keep as an empty one, because none of them is stored.
They agree across machines. Everyone in a session sees the same heron take the same step at the same tick without a single packet about it — and someone joining an hour late sees it in the right place immediately, with no catch-up.
And they have a past. Ask where this heron was ten thousand ticks ago and the answer is exact, not reconstructed. A tracker in this world could follow a trail that genuinely existed.
Empty bank: The Riverbank → · weather over it: The Almanac → · the same trick on water: Ruler Flow →
Ground and props from assets/bank.js. Creature positions use the same
integer hash as the terrain, so nothing here needs floating point to agree between
machines — only to be drawn.