How BattleMeme works
The full lifecycle of a token from launch to graduation, in five stages.
1. Create — Launch a token
The creator pays 0.01 ETH. The factory mints 1,600,000,000 tokens and deposits all of them into 5 chained single-sided LP positions on Uniswap V4 covering a 100× price range.
The 0.01 ETH isn’t taken by the platform — it’s forwarded to the hook and used as an atomic pre-buy: an ETH→TOKEN swap at the pool’s freshly initialised price, output sent to the creator. So the creator walks away holding the tokens 0.01 ETH bought at price 1× — same price any walk-up first buyer would pay.
Nothing else held for the team. Nothing held for the contract. Every other token in existence is liquidity, earned by the market.
2. Trade — Buy and sell on Uniswap
Trading happens entirely through Uniswap V4 — the native AMM, any router, any aggregator. DexScreener picks the pair up automatically. As ETH flows in, the price climbs one ladder rung at a time (rung 1 → 2.51× → rung 2 → 6.31× → … → rung 5 → 100×). When the pool crosses 5 ETH raised, the hook auto-routes the token into the battle queue.
3. Queue + Warmup — Lock the bracket
The token freezes in the queue. When the queue hits 10 fighters or the 24-hour timeout fires with at least 2 ready, the battle is scheduled. A warmup window (10 min on mainnet) gives creators time to rally before trading reopens.
4. Four rounds — Deterministic cadence
| Round | Cut rule |
|---|---|
| R1 | First cutoff. Cut size depends on bracket size. |
| R2 | Cut grows. |
| R3 | Intense — deep cut. |
| R4 | Grand Final — always cuts to top 1, battle resolves. |
The score is simple: live ETH currently in the LP. Sells reduce it, buys add it. No composite formula, no hidden weights.
5. Graduation — The losers’ gift
The survivor graduates with two locked LP positions:
- Wide LP funded by the winner’s own ETH — price discovery, 5× downside to 1000× upside
- Wall LP funded by every loser’s escrowed ETH — a single-sided buy wall that absorbs sells first
Both positions are locked in-protocol. Mint disabled forever on the winner. Original ladder rungs fully unwound.
Leftover tokens are burned. After building the wide LP and pre-funding the ClaimManager with enough winner tokens to cover every loser’s claim ratio, any unsold tokens still on the hook are burned (hook.burnLeftoverTokens(winner)). So the final winner supply is ≤ 1.6B — usually less, never inflated beyond what holders actually need.
Loser holders burn their tokens for winner tokens at the rate locked in at the moment they were eliminated. Claim forever — no deadline.
TL;DR
Anyone launches. Anyone trades. The token survives or dies on the order book. The winner keeps liquidity locked. The losers don’t disappear — they fund the wall.