ChainBloom Docs
Open ChainBloom

Worlds, paths, and history

How it worksLast reviewed 2026-07-316 min read

What a world fixes forever the moment it is created, what a path actually is, what counts as history, and the four states a path can be in when you find it.

Everything a world will ever be is decided in its first transaction. This page tells you which choices are permanent, what you are actually holding when you hold a path, and how to read a world someone else made, including one that has already ended.

What a world fixes at creation#

A is created by one transaction. That transaction carries the settings below, and none of them can be changed afterwards by anyone, including the person who chose them. There is no settings screen, because there is nowhere for settings to live.

SettingAllowed rangeWhat it decides
Paths1 to 8How many separate threads the world will ever have
Duration144 to 52,560 blocks, about 1 to 365 daysWhen the world stops accepting anything at all
Steps per path1 to 512How far one thread can travel before it can only be closed
Seedexactly 16 bytesThe world's own look when a gallery draws it
Titleat most 32 characters, matching ^[A-Za-z0-9 ._:-]*$What people see when they find it
Networkmainnet, testnet4, signet, or regtestWhich chain the world lives on
Every world setting, fixed by the creating transaction

Two things follow from that table that surprise people.

The paths cannot grow in number. If you open a world with four paths and six friends want in, two of them are not in this world. Decide the count while you are still writing the invitation, not after.

The title is short and plain on purpose. It holds ASCII letters, digits, spaces and . _ : - and nothing else: no emoji, no accents, no punctuation beyond that set. It is a label, not a description. The description lives wherever you invite people.

The world's own name is its creating transaction's . That is the identifier anyone anywhere can use to refer to it without a directory, an account, or a link to this site.

What a path is#

A is one thread inside a world, and there is nothing to it except a chain of confirmed steps and one live output.

Paths are numbered from zero. A path's identifier is the world's id, a colon, then its number. So path three of a world is <worldId>:3. That is the name that appears when software talks about it.

What you hold when you hold a path is a single Bitcoin output worth exactly 1,000 satoshis: the . Holding it is the whole of your ability to act on that path. To take a step you spend it and create the next one. To pass the path to someone else, that carrier ends up in their hands.

What counts as history#

History is the confirmed events, and nothing else.

Each event records the operation, the world and paths it touched, the transaction it lives in, the block height and the position of the transaction within that block. Order comes from that pair: block height first, then position inside the block. Sort by it and everybody gets the same sequence, in the same order, every time. That is what makes independent replay possible.

Three things are deliberately not history:

  • Unconfirmed transactions. A step sitting in the queue may be replaced or dropped. It is a projection until a block takes it. See confirmed and unconfirmed.
  • Anything a website adds. Likes, comments, follower counts, badges. None of it exists in the record, so none of it survives the site that stored it.
  • The picture. How the world was drawn is one reading of history, not part of it.

The four ways a path can end#

When you find a path, it is in exactly one of four states. Three are endings; the fourth is the interesting one.

Closed: somebody finished it#

The holder took a closing step on purpose. It spends the carrier and creates no successor, so the 1,000 satoshis go back to an address they chose, and no step can ever be added again. The record keeps the reason given with the close.

This is the ending worth aiming for. It is also available even after a path has used all its steps: you can always finish deliberately, even when you can no longer add.

Expired: the world's time ran out#

Every world has a height at which it stops, worked out at creation as the creating height plus the duration. It is exclusive: at that height the world is over. Every path still alive at that moment becomes , with the reason WORLD_DURATION_ELAPSED.

Nobody triggers this and nobody can postpone it. A path can expire mid-sentence, and plenty will. That is a real ending too, and often an honest one.

Abandoned: a spend broke the path#

If a confirmed transaction spends a live carrier but is not a valid ChainBloom step, the path becomes with the reason INVALID_CONFIRMED_SPEND. The most likely cause today is ordinary wallet software treating the 1,000-satoshi output as spare change and sweeping it up with everything else.

Nothing is invented to repair it. There is no rewind and no replacement carrier. The record states what happened and stops, which is why protect your path is worth five minutes before you take a step.

Live: it is still somebody's turn#

The path has a carrier, has not used all its steps, and its world is still open. Somebody can act on it right now.

A world is ACTIVE while it still has at least one live path. When the last one is closed or abandoned, the world is ENDED. If the height runs out first, the world is EXPIRED. Those three words are the whole vocabulary for a world's condition.

Reading a world that is still open#

A live world is not a draft. Every confirmed step in it is already final and already ordered; the only thing outstanding is what comes next.

So when you find one, the useful questions are concrete: how many of its paths are still live, how many steps each has left, and how many blocks remain before the whole thing stops. Those four numbers tell you whether there is room for you and how much of it.

You cannot browse worlds from this site yet. The public index is not switched on, and what is running says exactly why. What you can do today is read the rules that govern all of them, in the five actions, or the exact shapes software sees, in data structures.

Next

Design your own invitation

Pick the paths, the lifetime, and the step limit, then see what your choices ask of the people who join.

Create a world