TAVERN
THE SCROLLS

THE LAW OF EVERY LAUNCH

Launchpads before this launched tokens. TAVERN launches economies. One launchGame() deploys a full game: fixed-supply coin, Uniswap v4 pool with the tithe hook, vault-birth NFT population, staking floor and an ETH-backed yield token — atomically, or not at all. Creators configure a bounded parameter set; the engine code is fixed for every launch — no arbitrary code, ever. The Sherwood-cast game is launch #1, the flagship proof. This page is the template every launch runs.

THE ONE CONSTITUTIONAL RULE (unrug lineage): no exit friction, ever. Leaving is always free — we innovate on incentives, never on permission to leave.

§0THE ONE-SENTENCE GAME

Lock the coin to be born a villager; Peasants forge $GOLD, Sheriffs tax it, and every swap of the coin on its Uniswap v4 pool pays a real-ETH tithe into the game's Treasury that backs $GOLD with hard ETH — so the game token is a claim on real trading volume, not a promise.

§1ASSETS

ASSETWHAT IT ISSOURCESSINKS
The coin
($SHER in the flagship)
Fixed supply, trades on its own v4 pool (native ETH / coin) with the hook attached. marketbirth burn, redeem toll burn, treasury buyback-and-burn
Villager NFT Born by locking the birth price (flagship: 100k). 90% Peasant / 10% Sheriff, 5 rarities. Carries an on-chain vault: redeemable for the locked coin minus toll. birthCommit / birthRevealredeem (burn NFT, reclaim vault)
$GOLD The yield token. Minted only by the Floor (emission-capped). Backed: burn $GOLD → pro-rata ETH from the Treasury's backing pot. Peasant forging (staked accrual)rarity upgrades (burn), ETH redemption (burn)
ETH (Treasury) Real yield. The hook skims every swap on the pool. v4 hook fee on ALL swaps, both directionsraids (§4)

§2THE LOOP — WHY EACH ACTOR KEEPS PLAYING

BUY THE COIN
every swap pays the 1% ETH tithe — buys and sells alike
BIRTH A VILLAGER
burn slice at commit + vault lock · 90/10 class roll, 5 rarities
THE TREASURY (REAL ETH)
hook fee accrues here · raids split it 60/25/14/1
◀▶
STAKE ON THE FLOOR
Peasants forge $GOLD ──20% tax──▶ Sheriffs
$GOLD IS BACKED
burn GOLD → pro-rata ETH out (real yield) · ratio-neutral G1
BURN GOLD TO UPGRADE
forge faster = larger claim on FUTURE fees — a bet on future volume

§3THE V4 HOOK — THE 2% BREAKDOWN

1.00% LP FEE
1.00% ETH TITHE → TREASURY

§4RAIDS — TREASURY DISTRIBUTION

Permissionless raid() when the treasury ≥ threshold (1 ETH):

60%
25%
14%
GOLD backing pot (Exchequer) buy the coin on the pool & burn it (the buyback itself pays the tithe) staked Sheriffs, pro-rata by tax weight (ETH, direct) 1% raid caller — the keeper bounty

§5$GOLD BACKING — THE EXCHEQUER

§7CLASS & RARITY — FLAGSHIP NUMBERS

RARITYODDSFORGE MULT.UPGRADE COST (BURN GOLD, FROM TIER)
Common60%1.0×2,000
Uncommon25%1.25×5,000
Rare10%1.6×12,000
Epic4%2.2×30,000
Golden1%3.0×— (top)
CLASS ROLL
90.00% PEASANT / 10.00% SHERIFF
BIRTH (FLAGSHIP)
100,000 COIN · 10% BURNED AT COMMIT
CLAIM TAX
20% → STAKED SHERIFFS
EXIT GAMBLE
50% STEAL-ALL ON RISKY UNSTAKE
REDEEM TOLL
4% OF VAULT — BURNED
UPGRADES
ONLY UP · ESCALATING BURNS

§10THE FACTORY — WHAT A CREATOR CAN AND CANNOT TOUCH

DIALCREATOR CONFIGURES?BOUND
Name / symbolYES
Birth priceYESsane bounds, validated
Predator (Sheriff) oddsYES5% – 20%
Rarity oddsYESmust sum to 10000 bps
Emission capYESsane bounds; canon guidance: ≥ 4 years of full-population forging
Swap fee (2% = 1% LP + 1% tithe)NOtemplate constant
Raid split 60/25/14/1NOtemplate constant
Claim tax / gamble / burn / tollNO20% / 50% / 10% / 4%
Engine codeNOfixed for every launch — no arbitrary code
Exit freedomNOconstitutional

§11THE CREATIVE SKIN — YOURS ENTIRELY

The economics are law. The world is yours. Every launch runs the identical engine — same fees, same splits, same invariants — but each game can look like its own world: its own earner and predator classes, yield-token name, rarity names, lore and palette. The skin lives in the coin itself: TavernCoin.tokenMetadata, a ≤512-byte string set once at launch (LaunchConfig.coinMetadata) and immutable forever, like everything else. A skin changes zero numbers — the yield token's real name on chain stays GOLD, the backing stays ETH, the odds stay whatever the creator's bounded dials said.

THE SKIN CANNOT LIE: a theme renames and repaints; it cannot touch a fee, an odd, a split, or an exit. Missing, invalid, oversize or unreachable themes fall back to the tavern-classic skin — nothing breaks, nothing is faked.

Inline theme — compact JSON in the metadata string:

{"v":1,"pack":"outlaws","e":"Merchant","p":"Outlaw","g":"LOOT", "r":["Dust","Copper","Silver","Gold","Crown"], "tag":"steel and smoke on the north road","pal":"ember"}
FIELDTYPELIMITMEANING
vnumbermust be 1schema version — anything else is ignored (default skin)
packstringone of the 4 packsbuilt-in sprite pack; unknown → sherwood
estring≤24 charsearner class name (the forger) — default from pack
pstring≤24 charspredator class name (the taxer) — default from pack
gstring≤12 charsyield-token display name — display only, backing stays ETH
rstring[5]≤16 chars eachrarity tier names, Common→Golden order; blanks fall back per-tier
tagstring≤120 charsone-line lore, shown on the game page and the board
palstringpalette name or #rrggbbaccent: forest · ember · steel · night · gold · blood
uristringhttps, ≤256alternative form {"v":1,"uri":"https://…"} — full external theme

The four built-in packs — art the tavern owns, an earner/predator pair each:

PACKEARNERPREDATORACCENT
sherwood Peasant Sheriffforest
outlaws Merchant Outlawember
castle Blacksmith Knightsteel
wilds King Wolfnight

External themes{"v":1,"uri":"https://…/theme.json"} on chain, pointing at a JSON file with the same fields plus optional custom sprites:

{"v":1,"e":"Miner","p":"Baron","g":"ORE","pal":"#8c6a4e", "sprites":{"e":"https://…/miner.png","p":"https://…/baron.png"}}

Sanitization — enforced on every theme, inline or external:

T1all text fields are rendered as TEXT only — markup characters (< > & " ' `) and control characters are stripped at parse, and output is HTML-escaped at render. No HTML injection path exists.
T2lengths are clamped (see the schema table); the whole string is capped at 512 bytes by the factory itself, on chain.
T3a theme can never change an economic number, a sprite of another game, or anything outside its own page. Per-game isolation applies to skins too.

§6ATTACKS, AND WHY THEY DIE

§8WHAT IS EXPLICITLY NOT IN THE GAME

No sell caps, locks, cooldowns, or per-block limits — constitutional.
No oracle. Every number the game needs is on-chain (pool, pot, supply).
No admin mint, no fee levers, no upgradeable proxies. Pause exists on the NFT/Floor only for launch choreography and is renounced post-launch.

§9SOLVENCY INVARIANTS — TESTED, AND SHOWN LIVE IN THE UI

S1coin.balanceOf(Villagers) ≥ totalVaulted — vault solvency
S2ETH(pot) / GOLD.totalSupply() never decreased by any Exchequer action (G1)
S3Floor.totalEarned ≤ maxEmission — bounded GOLD claim
S4the hook tithe accrues only from swaps; no other ETH path in
S5every coin the game touches either sits in a vault or is burned
S6a launch either deploys the complete instance or reverts entirely
S7no post-launch lever exists on any instance — no fee setters, no admin mint, no upgrade path

LIVE STATUS

reading chain config…

THE FLAGSHIP CAST

The cast of Sherwood — launch #1

⌂ back to the TAVERN · play the flagship · launch a game