Protocol

Emission

How much GOON an epoch can distribute, why that amount halves, and how it is divided among the wallets that mined.

The schedule#

Emission is a step function fixed in the program at activation. Each era lasts 210 epochs, and each era releases half as much per epoch as the one before.

emission(epoch) = E0 >> floor(epoch / 210)          E0 = 1,190,476.190476 GOON

cumulative(epoch) = sum of emission(0..epoch), capped at 500,000,000

The first era releases 210 × E0 = 249,999,999.99996 GOON. The series is geometric, so the total converges just under the 500,000,000 reserve and can never exceed it. The program computes cumulative(epoch) itself on every root and refuses a total above it.

Fig. 4 · Emission schedule

GOON released per epoch

Halves every 210 epochs (one epoch = one day). The program enforces this ceiling on every root.

1.19MEra 1595.2KEra 2297.6KEra 3148.8KEra 4Era 5Era 6Era 7Era 8
Show the numbers
EraEpochsGOON / epochEra totalVault released
10–2091,190,476.19249,999,99949.99%
2210–419595,238.09124,999,99974.99%
3420–629297,619.0462,499,99987.49%
4630–839148,809.5231,249,99993.74%
5840–104974,404.7615,624,99996.87%
61050–125937,202.387,812,49998.43%
71260–146918,601.193,906,24999.21%
81470–16799,300.591,953,12499.60%
EraEpochsGOON per epochEra totalVault released by end
10–2091,190,476.190476249,999,99949.9999%
2210–419595,238.095238124,999,99974.9999%
3420–629297,619.04761962,499,99987.4999%
4630–839148,809.52380931,249,99993.7499%
5840–104974,404.76190415,624,99996.8749%
61050–125937,202.3809527,812,49998.4374%
71260–146918,601.1904763,906,24999.2187%
81470–16799,300.5952381,953,12499.6093%

One epoch = one day · settlement delay 12 h

The epoch pool#

An epoch does not have to distribute everything the schedule has released. Whatever earlier epochs left undistributed is released again slowly, rather than as a windfall.

headroom = cumulative(epoch) - totalAllocatedSoFar
backlog  = headroom - emission(epoch)

pool     = min( headroom, emission(epoch) + floor(backlog / 210) )

Because pool ≤ headroom, the cumulative total after settlement can never pass the schedule. That is checked off-chain before publishing and again by the program.

The split#

denominator    = max( sum of FinalGP over all miners, networkFloor )

reward(wallet) = floor( pool * FinalGP(wallet) / denominator )
  • Division rounds down, so the sum of rewards never exceeds the pool. The dust stays in the vault.
  • The network floor stops a thin epoch from paying its whole pool to a handful of wallets. If ten wallets earn 500 GP between them, they split 5% of the pool, not all of it.
  • The undistributed remainder is not lost. It becomes backlog and re-enters later pools at 1/210 per epoch.
ParameterValue
Network GP floor (minimum denominator)10,000 GP
Most one GP can be worth in era 1≈ 119.05 GOON
Backlog release1 / 210 of undistributed emission per epoch
Provisional GP carried into epoch 0100%
Diminishing returnsraw GP above 60 counts at 50%
Cluster rulemore than 3 wallets on one network fingerprint share 3 wallets' GP

Worked example#

Epoch 12, era 1.   emission = 1,190,476.190476
Allocated so far (epochs 0-11) = 9,000,000      cumulative(12) = 15,476,190.476188
headroom = 6,476,190.476188     backlog = 5,285,714.285712
pool     = 1,190,476.190476 + 5,285,714.285712 / 210 = 1,215,646.258503

Network total = 42,000 GP  (above the 10,000 floor)
A wallet with 80 GP receives  1,215,646.258503 * 80 / 42,000 = 2,315.516682 GOON

Provisional Goon Power#

Goon Power earned before activation has no pool to draw on. When mining activates, each wallet's provisional total from every earlier period is added to its epoch 0 score and shares epoch 0's pool with everything mined that day. A large pre-launch crowd therefore dilutes itself: epoch 0 distributes one epoch's pool, not a retroactive one for every pre-launch day.