Divi Games

Courses / The side-chain

Blocks and the sequencer

The Divi Games chain is a side-chain run by one sequencer: the operator's divi-gamechain node. It collects signed transactions in a mempool, orders them, and produces blocks.

Each block header holds:

height, prev_hash, time_ms,
divi: { height, hash },    // the Divi checkpoint (MCHK, lesson 3)
tx_root,                   // SHA256 over the ordered txids
state_root,                // lesson 2
producer                   // the sequencer's address

block_hash = SHA256(canonical header bytes), and the sequencer signs dg-block:<height>:<block_hash> as a Divi signed message, the same kind of signature your wallet makes.

Honest limits

One sequencer means you trust one operator to include your transaction and not to reorder unfairly. That is a deliberate trade for a testnet game: it is fast and simple, and anyone can check the history afterwards (replay, lesson 5). Funds are testnet funds only.

Failed actions still count

If an action fails (say a move into a taken cell), the transaction is still in the block with ok: false and an error. Its writes are discarded, but its nonce is used up, so your next transaction must use the next nonce. The account view /v1/account/<addr> has next_nonce, which also counts transactions still in the mempool.