Mechanism design, settlement accounting, and distributional analysis
FOMO4D descends from the 2018 experiment Fomo3D, which demonstrated that a countdown auction with continuous dividend distribution can sustain adversarial participation at scale for months.1 The present design retains the original's economic skeleton — a rising key curve, a resettable countdown, team-parameterized revenue splits, and a terminal pot — and departs from it in three respects. First, the game is coupled at the protocol layer to a tradable asset, $4D, through a mandatory burn leg: every purchase spends 20% of its value buying and destroying $4D on a Uniswap v4 pool whose hook the game controls. Second, the game is single-round and terminal: there is no seed for a successor round, and settlement distributes the entire pot. Third, the system is ownerless in the strict sense — no upgrade path, no pause switch, no privileged withdrawal, and liquidity that cannot be removed by any party. The design goal is a perpetual game: termination is possible but requires the simultaneous abstention of every participant for a full day (§4), an outcome the incentive structure makes deliberately expensive.
Throughout, monetary quantities are denominated in ETH. The system comprises four contracts:
TOKEN (the $4D ERC-20), Fomo4DHook (fee capture and liquidity lock),
Fomo4DGame (all game logic), and Fomo4DPlayerBook (the referral identity
layer), plus a stateless Zap periphery. Dependencies are strictly one-directional:
the game calls the hook; the hook never calls the game.
Keys are priced along the affine curve inherited verbatim from the original contract:
with a = 74,999,921,875,000 wei (≈ 7.5×10−5 ETH) and b = 156,250,000 wei (≈ 1.56×10−10 ETH), where k is the number of whole keys already sold. Integrating (1), cumulative spend C and outstanding keys K satisfy the closed forms
so the marginal price is monotone non-decreasing in inflow: no later entrant ever pays less than an earlier one. Because the original constants were calibrated for a round two orders of magnitude larger, the curve has a long flat region: prices remain within a factor of two of a until C ≈ a²∕2b = 18 ETH. Early participation is therefore approximately egalitarian by construction, which suppresses the profitability of launch sniping on the key side (§9.2).
| Property | Value | Rationale |
|---|---|---|
| Transferable | No | precondition of O(1) dividend masks (§5) |
| Redeemable | No | a sellable key invites a terminal bank run |
| Dividend-bearing | Yes | pro-rata share of every subsequent buyer's dividend leg |
| Flag-capturing | ≥ 1 whole key per purchase | fractional buys earn dividends but cannot reset the clock |
Capital committed to keys is recovered only through dividends and terminal settlement; the curve price of a key is not a redemption value. The liquid side of the system is $4D (§3).
Every purchase of value v decomposes at execution time as follows: 20% of v is spent in the same transaction market-buying $4D, which is then burned; the remaining 80% (the ETH leg) splits into a 10% referral commission (paid only to a registered referrer, otherwise redirected to the pot, §6), a 2% team allocation, and an 88% residual divided between the dividend and pot accounts according to the buyer's team selection:
| Team | Dividends (gen) | Pot | stored (bps of leg) |
|---|---|---|---|
| Whale | 36.4 | 63.6 | 3200 / 5600 |
| Bear | 50.0 | 50.0 | 4400 / 4400 |
| Bull | 59.1 | 40.9 | 5200 / 3600 |
| Snek | 73.9 | 26.1 | 6500 / 2300 |
Team choice affects only this split, never the number of keys received. In the 2018 round, between 83% and 91% of capital selected the maximum-dividend team; the presence of four options is best understood as expressive rather than strategic.1
The interface presents this decomposition as an 80/20 rule: each key is paid for with 80%
ETH and 20% $4D. A purchaser may supply the $4D leg in either of two equivalent ways: pay entirely
in ETH and let the contract acquire the burn leg atomically (Game.buyKey), or supply
$4D from balance via the periphery (Zap.zapAndBuy), which liquidates it and composes
the proceeds with the attached ETH into a single purchase. Both paths execute the identical
downstream accounting; slippage failure reverts the entire transaction.
Until cumulative inflow reaches 50 ETH, each address may spend at most 2 ETH on keys. The excess of an over-limit purchase is not refunded but credited to the buyer's withdrawable vault, so the transaction never reverts. The cap widens the early holder set during the flat region of the curve — the window in which position, not price, is the scarce resource.
The entire supply S = 109 $4D is deposited one-sided into a single Uniswap v4 range at launch, with zero paired ETH, an initial price p0 = 2.5007×10−8 ETH, and hence an initial fully-diluted valuation F0 = 25.01 ETH. Both follow from the launch tick 175,050. Exactly 25 ETH is unreachable: prices live on the grid p = 1.0001i and no integer i lands on it; 175,050 is the nearest tick the spacing admits, 0.027% above. The hook rejects both liquidity removal and third-party liquidity addition; the position is permanent and unique. For a constant-liquidity one-sided range, cumulative net ETH inflow x determines the spot price and the sold fraction in closed form:
Equation (3) is structurally the constant-product law with F0 playing the role of initial reserves. Its salient corollary: the price is bounded below by p₀ — aggregate selling can return the price to the launch level but no further, because the pool never holds ETH that was not first paid in above that level.
The 20% burn executes at prevailing pool prices with no oracle, no TWAP, and no fixed token
schedule. The buyer's bill is fixed in ETH by the curve; price manipulation can perturb only the
number of tokens burned — a quantity with no private beneficiary, which is what removes
the flash-loan attack surface. Burns are batched: the game accumulates burn obligations and
executes them in-transaction once the queue reaches 0.001 ETH (equivalently, any purchase of
≥ 0.005 ETH burns inline), eliminating dust swaps. A permissionless pokeBurnQueue()
retries in the rare case a swap fails; pool malfunction can delay burning but can never block
purchases.
The hook charges 2% on the ETH side of every swap, in both directions; only exact-input orders are
supported (exact-output reverts), which reduces the fee geometry to two auditable cases. The rate is constant: there is no launch
premium and no decay schedule, so the fee geometry has no time dimension to reason about (§9.2). Fees are bucketed at the moment
of capture into 20% team / 80% pot and are settled by two permissionless pull functions
(claimTeamFees, sweepFeesToPot) whose targets are immutable and whose
ratio is fixed at accrual time, making settlement order irrelevant.
Remark (no fee-to-dividend leg). An earlier revision routed 40% of trading fees into the dividend mask. Audit demonstrated the mechanism is unsalvageable in principle: masks pay "holders at the instant of accrual," so any actor who can influence the pull timing — by nesting the purchase inside their own pool unlock, or by buying dust while K = 0 — captures the accumulated stream (measured instances: 14.0 ETH in one transaction; a 0.0001 ETH purchase returning 7.6 ETH). Routing fees to the pot instead distributes them by terminal shares, where call timing affects no one's entitlement. The removal is load-bearing, not cosmetic.
The clock initializes at Tinit = 12 h. Each whole key purchased adds Tinc = 30 s, capped at Tmax = 24 h beyond the present. The purchaser of the most recent whole key holds the flag. The game ends only when the clock reaches zero — that is, when no participant anywhere buys a single whole key for a full Tmax window. Sustained life requires
which is 0.22 ETH/day at genesis and grows only as √C (≈ 1.6 ETH/day after 1000 ETH of inflow). The heartbeat is deliberately cheap: a perpetual game means perpetual dividends and perpetual burn pressure, and the pot is positioned as an eventual jackpot rather than a scheduled event.
Dividends derive from a single pipeline: the gen leg of subsequent purchases. Accounting is the original's global-mask scheme, O(1) per operation:
where M is the global mask, d a dividend event, and (ki,
mi) player i's key count and personal mask. Rounding dust accrues
to the pot. All balances — dividends, referral commissions, winner's prize, and purchase credits —
are held in pull-model vaults released only by the owner's withdraw(). There is
deliberately no reinvest(): compounding is withdraw followed by
buyKey, keeping mask settlement and key minting on disjoint code paths.
A 10% commission on the ETH leg of every purchase is payable to the purchaser's bound referrer.
Binding and eligibility are separated in time. A referrer address binds at purchase (and persists
until overwritten), but the commission pays out only if the referrer holds a registered name in
Fomo4DPlayerBook at the moment of each payment; otherwise that 10% joins the
pot. Registration costs 0.01 ETH — paid in full to the immutable team address — and names
(lowercase a–z0–9_, 1–32 characters) are unique, permanent, and limited to one per
address. Late registration retroactively activates existing bindings from that point forward.
The fee is a filter, not a wall: a registrant recoups it after referring 0.125 ETH of volume, and
self-referral through a second wallet is not preventable — for a sophisticated participant the
referral program is, in effect, an 8% rebate (§9.3). The layer's actual functions are spam
reduction, a human-readable link namespace (?ref=alice), and team revenue.
When the clock lapses, any address may call finalize(); the winner's own
withdraw() performs an inline finalization first, so settlement depends on no third
party. The sequence is fixed: (i) sweep both hook fee buckets — ensuring pre-terminal fees reach
the pot and denying the team any timing advantage on a first-come-first-served chain; (ii) route
any residual burn queue to the team vault (routing it to the pot would let the terminal buyer
manufacture failed burns as self-rebate); (iii) distribute:
| Recipient | Share |
|---|---|
| Final key buyer | 48% |
| All key holders (final mask raise, pro rata) | 50% |
| Team | 2% |
There is no next-round seed. If the game terminates with zero keys ever sold (a token market that never produced a player), the pot routes to an immutable post-game receiver. After termination, purchases revert, the pool persists indefinitely, subsequent trading fees accrue to the team address, and vault claims never expire — the cost, and the proof, of having no administrative sweep function.
The mechanisms of §§2–7 are not independent features; they compose into a closed loop of three mutually reinforcing flywheels, each of which generates the demand that powers the next (Figure 1). This closure is the design's central claim: no single component needs external subsidy, because every component's output is another component's input.
Every $4D swap, in either direction, pays a 2% ETH-side fee of which 80% accrues to the pot (§3.4). The jackpot therefore grows continuously and autonomously: speculation, market making, and ordinary trading on $4D all convert into prize capital, whether or not a single key is sold that day. The pot is not funded by emissions or by a treasury — it is funded by the token's own economic activity.
Twenty percent of every key purchase market-buys $4D at prevailing prices and destroys it (§3.2). Auction demand is thus mechanically transmuted into price-insensitive token demand plus strict supply contraction, on a pool whose one-sided construction already bounds the price below by p₀ (Eq. 3). Rising auction activity pushes the token up its price curve; supply only ever shrinks. The flywheel's earliest turns are therefore funded by organic volume alone — there is no launch-window subsidy standing in for it.
A key is a productive asset from the moment of purchase: it earns a pro-rata share of the gen leg of every subsequent purchase (§5), a claim on 50% of the pot at termination, and — for the final buyer — the 48% jackpot itself. The growing pot from Flywheel Ⅰ raises the value of both terminal claims, drawing new key demand; that demand extends the clock, deepens the dividend stream for incumbents, and spins Flywheel Ⅱ. The loop closes: fees fill the pot, the pot sells keys, keys burn the token, and the token's market generates the fees.
The heartbeat condition (Eq. 4) quantifies the loop's persistence: a day's clock costs 2880 keys, under 2 ETH of inflow even at a thousandfold scale — while the same day's trading fees, dividends, and burn all compound regardless. The system is engineered so that its resting state is running.
A mechanism that redistributes value will be probed by sophisticated actors. FOMO4D's approach is to price adversarial behavior so that its proceeds flow back into the loop of §8, rather than to promise prevention. Four dynamics are analyzed and absorbed by design.
The flag in the final seconds is worth up to 48% of the pot against the marginal cost of one key, so the closing blocks resolve as a speed competition among automated participants. The deployment chain's first-come-first-served ordering without a public mempool makes this a clean latency race — no bribery auction, no reordering games — and every competing bid in that race is itself a key purchase: it extends the clock, pays dividends to all holders, and burns $4D. The endgame contest, whoever wins it, is revenue for the system.
Early accumulation of $4D is rational and expected. The design meets it economically: the per-address cap of 2 ETH, in force until 50 ETH of cumulative inflow, raises the marginal cost of launch-window concentration without pretending to prevent it. Independently, the flat region of the key curve (§2.1) keeps early auction entry approximately egalitarian. Accumulation pays a toll that funds the game; it is a revenue source, not a threat.
A participant operating two addresses can direct their own 10% referral leg to themselves after a
one-time 0.01 ETH registration. The identity layer is therefore priced as a filter and a
namespace, not a wall: it deters casual misuse, gives every serious participant a shareable
handle (?ref=alice), and converts registration into protocol revenue. Where
self-referral occurs, the rebate simply functions as a volume discount for committed players —
capital that is, by construction, already inside the loop.
The 2 ETH per-address cap (§2.4) raises the marginal cost of concentration during the flat region of the curve — each additional tranche requires a fresh address and its own gas — which widens the early holder set that Flywheel Ⅲ pays dividends to. The cap self-retires once inflow reaches 50 ETH and the curve itself begins pricing position.
| Parameter | Value |
|---|---|
| $4D supply / pool share | 1,000,000,000 · 100% one-sided at launch · LP locked both directions |
| Initial price / FDV | p₀ = 2.5007×10⁻⁸ ETH · F₀ = 25.01 ETH (launch tick 175,050) |
| Key curve | P(k) = a + b·k; a = 74,999,921,875,000 wei, b = 156,250,000 wei |
| Payment split | burn 20% · then of the ETH leg: referral 10%, team 2%, gen+pot 88% by team row |
| Teams (gen/pot) | of the 88% residual: Whale 36/64 · Bear 50/50 · Bull 59/41 · Snek 74/26 (stored as bps of the ETH leg: 3200/5600, 4400/4400, 5200/3600, 6500/2300) |
| Clock | Tinit 12 h · +30 s per whole key · cap 24 h · lead requires ≥ 1 whole key |
| Minimum purchase | 0.0001 ETH (guarantees the first buy is ≥ 1.33 keys — the last-buyer invariant) |
| Early cap | ≤ 2 ETH per address until 50 ETH total inflow; excess becomes vault credit |
| Hook fee | 2% ETH-side, both directions, exact-input only; constant, no launch premium |
| Fee routing | 20% team / 80% pot, bucketed at accrual; permissionless settlement |
| Burn batching | executes in-tx at ≥ 0.001 ETH queued (inline for buys ≥ 0.005 ETH) |
| Referral registration | 0.01 ETH, one name per address, immutable fee and recipient |
| Terminal split | final buyer 48% · holders 50% · team 2%; claims never expire |
| Governance | none — no owner, no upgrades, no pause |
Every claim in this document reduces to a contract read: curve constants and splits are
public constants; pot, inflow, and key totals are public state; the liquidity locks
are two revert statements in the hook's liquidity guards; the absence of governance
is the absence of any function that could exercise it. The interface reads all of it directly
from the chain — pool price through the v4 StateView, conversion quotes through the v4 Quoter —
so what it displays is the contract's own state rather than a model of it.
1 Fomo3D round 1, contract 0xA62142888ABa8370742bE823c1782D17A0389Da1,
round_(1): 96,493 ETH inflow, 34,667,422 keys, 21,811.74 ETH pot — the empirical
ledger against which the present parameterization was calibrated.
This document describes a fully on-chain, rules-transparent game. It is a mechanism paper, not investment advice.