🐙 DEGEN ROYALE ($DGR)
- Chaos is Coming, Only the Strongest Will Rule the HILL
- Executive Summary
- Trust Model
- 1. Token Overview
- Token Distribution
- Presale
- Fund Allocation
- Refund Policy
- Presale Vesting
- Airdrop (5% — Activity Points)
- LPManager Reserve
- 2. Tax System
- 2.1 Dynamic Tax Tiers
- 2.2 Tax Flow
- 2.3 Referral Rewards — 0.2% of Referee Trading Volume
- 2.4 Dev/Treasury Wallet Allocation (10% of Tax)
- 3. Game Mechanics
- 3.1 🎰 Lottery
- 3.2 👑 King of the Hill (KOTH)
- ⚠️ Termination Event
- 3.3 ⚡ Blitz Hill (Hourly Competition)
- 3.4 💎 Staking
- 3.5 🎫 Presale & Vesting
- 4. LP Management
- 4.1 Automated System
- 4.2 Manual Triggers
- 4.3 Community Governance (VotingContract)
- 5. Architecture
- 5.1 Smart Contract Layer
- 5.2 Off-Chain Layer
- 5.3 Architectural Principle: Contracts Decide, Kraken Triggers
- 5.4 Fee Transparency & Gas Efficiency
- 5.5 Security Model
- 6. Deployment
- 6.1 Deployment Order
- 6.2 Testnet Parameters
- 7. Risk Factors
- 8. Roadmap
Chaos is Coming, Only the Strongest Will Rule the HILL
Version: 2.0 Date: July 2026 Network: Base (Ethereum Layer 2) Token Standard: ERC-20 Status: Testnet — Mainnet Pending
Official Links:
- Website: https://dgrbase.xyz
- Telegram Group: https://t.me/dgrbase_xyz
- Telegram Channel: https://t.me/dgrbase
- X (Twitter): https://x.com/degenroyale_DGR
- Info Bot: @DegenRoyaleDGR_bot
Executive Summary
Degen Royale is not your average memecoin. While most memecoins rely purely on hype and speculation, $DGR builds an entire ecosystem around it — with games, staking, and automated liquidity management that keep degens engaged and the charts pumping.
The core idea is simple: every trade fuels the ecosystem. Tax from buys and sells flows into game pools (Lottery, King of the Hill, Blitz Hill), staking rewards, and LP management — creating a self-sustaining economy where activity generates value for everyone.
Key numbers:
- Max Supply: 1,000,000,000 $DGR (1 billion)
- Token Allocation:
- 15% (150M) → Initial LP (paired with 80% of ETH raised from presale)
- 15% (150M) → Initial LP (paired with 80% of ETH raised from presale)
- 20% (200M) → Presale (self-hosted contract)
- 55% (550M) → Ecosystem Growth (LP Manager)
- 5% (50M) → Airdrop (activity-points campaign)
- 5% (50M) → Marketing (KOL allocations, locked & vested in Presale)
- Network: Base L2 — fast, cheap, and built for degen activity
- Presale Voucher: 200M pVDGR (0.7x staking reward) for presale participants
Why Base?
- Gas fees under $0.001 per transaction
- Fast block times (~2 seconds)
- Growing degen community
- Backed by Coinbase infrastructure
Trust Model
Degen Royale is built on one principle: trust the code, not the devs.
All smart contracts are immutable — once deployed, no one can change the rules. The game mechanics, tax rates, and fund allocation are hardcoded and verified on-chain.
| Layer | Guarantee |
|---|---|
| Contracts | Immutable, verified on Base block explorer |
| Dev/Treasury Wallet | Published address, every transaction traceable on-chain |
| Presale | On-chain deposit tracking, funds released only after finalization |
| Bot (Kraken) | Dashboard public, all trigger actions logged |
| Identity | Anonymous — but code speaks louder than names |
"Don't trust me. Trust the code."
This project was developed with AI-assisted coding and auditing. All design decisions, architecture, and tokenomics originate from the founding team.
Anonymous + immutable code + on-chain transparency is more trustworthy than a known dev team that can change contract rules at will. Every function, every parameter, every flow is auditable by anyone at any time.
1. Token Overview
| Property | Value |
|---|---|
| Name | Degen Royale |
| Symbol | $DGR |
| Max Supply | 1,000,000,000 (1B) |
| Standard | ERC-20 (OpenZeppelin v5) |
| Network | Base (Ethereum L2) |
| Initial LP (Mainnet) | Up to 16 ETH + 150,000,000 $DGR (80% of 20 ETH presale hardcap) |
| Reserve | 1,000,000,000 $DGR → LPManager 550M + Presale 450M (150M LP + 200M vesting + 50M airdrop + 50M marketing) |
| Listing Price | revealed after presale |
Token Distribution
1,000,000,000 $DGR (100% minted at deploy)
├── 150,000,000 $DGR (15%) → Initial LP (paired with 80% of raised ETH)
├── 200,000,000 $DGR (20%) → Presale Allocation (self-hosted contract)
├── 550,000,000 $DGR (55%) → Ecosystem Growth (held by LPManager)
├── 50,000,000 $DGR (5%) → Airdrop (activity-points campaign)
└── 50,000,000 $DGR (5%) → Marketing (KOL allocations, locked & vested)
Presale
The presale is conducted via a self-hosted smart contract (not a third-party platform). Buyers send ETH directly to the presale contract and receive pVDGR (Presale Voucher Token) after finalization.
Why self-hosted?
- Zero platform fees (only gas costs)
- Full control over mechanics
- Transparent on-chain tracking
- Telegram bot integration for UX
| Parameter | Value |
|---|---|
| Platform | Self-hosted contract + Telegram bot |
| Token Sold | pVDGR (not DGR directly) |
| pVDGR Supply | 200,000,000 |
| DGR per ETH | minimum 10,000,000 |
| Hardcap | 20 ETH |
| Softcap | 2 ETH |
| Min Buy | 0.001 ETH |
| Max Buy | 1 ETH |
| Duration | 7 days |
| LP Allocation | 80% of raised ETH + 150M DGR |
| DevOps Allocation | 20% of raised ETH |
| Refund | Available only if softcap not reached after 7 days |
Fund Allocation
All raised ETH is split 80% LP / 20% DevOps regardless of amount:
| Destination | Share | Purpose |
|---|---|---|
| LP | 80% | Paired with 150M DGR on Uniswap V2 |
| DevOps | 20% | DevOps & early marketing |
- LP always pairs with 150M DGR — thicker LP from more ETH raised means lower slippage
- pVDGR (200M) is distributed proportionally to each depositor based on their share of total raised
Refund Policy
Refund is only available if the softcap (2 ETH) is not reached within the 7-day presale window.
| Condition | Refund? |
|---|---|
| < 2 ETH raised after 7 days | ✅ Full refund — presale failed |
| ≥ 2 ETH raised after 7 days | ❌ No refund — presale succeeded |
Presale Vesting
After finalization, participants claim 100% of their pVDGR directly to their wallet. It is their choice whether to stake it or hold.
Flow:
- Presale finalizes → participants call
claimPVDGR()→ 100% pVDGR sent to wallet (no LP needed for pVDGR) - pVDGR is not auto-staked — users decide: stake for ETH rewards or hold
- Staking pVDGR earns ETH at 0.7x the rate of DGR stakers (no locktime)
- The first DGR claim unlocks once the dev adds the initial LP (
addLiquidity()— 150M DGR + 80% of raised ETH); only after that can users callclaim()→ pVDGR is burned, DGR is sent weeklyWeekly DGR claim:
- Claims 1-2: 5% of original allocation per week, max 250,000 DGR per wallet (anti-whale)
- Claims 3+: 10% of original allocation per week, max 500,000 DGR per wallet (anti-whale)
- On each claim: proportional pVDGR is burned, DGR is sent
- When full allocation claimed, all pVDGR burned automatically
Why pVDGR?
- Prevents immediate dump — holders are incentivized to stake for ETH rewards
- 0.7x reward ratio reflects the locked/vested position
- Transparent — all vesting and staking is on-chain
Airdrop (5% — Activity Points)
50M $DGR (5% of supply) is reserved for the community airdrop. It rewards real ecosystem activity, not wallet count — no paid participation, no Pinksale-style raffle.
How points work:
- KOTH / Blitz Hill leaderboard positions: 5,000 / 3,000 / 1,000 points (repeatable each round)
- On-chain function interactions across the ecosystem: 200 points per unique function (once per function, no repeats)
- Social tasks: 200 points per task (via the Telegram airdrop bot)
- Referral: 100 points per referral + 0.2× of the referee's accumulated points + 10,000 points if the referred user joins the presale with a minimum buy of 0.01 ETH
- Eligibility: must interact with at least 2 ecosystem functions before the snapshot
Allocation & claim:
- Points are earned only from on-chain interactions on the testnet after the LP goes live (pre-presale functions give no points) — users are encouraged to try the live ecosystem post-launch
- Interactions are recorded live on-chain (contracts stay exactly as deployed — no redeploy); the mainnet presale runs in parallel, and point counting stops when the mainnet presale finalizes (snapshot at finalize)
- Total airdrop pool is split proportionally by points across all eligible participants (no winner cap)
- Backend computes allocations and pushes them on-chain in batches of up to 500 users per
setAirdropAllocations()call; the contract reverts if the total ever exceeds 50M DGR - Claim follows the same vesting as presale: 5% (max 250K) for the first 2 claims, then 10% (max 500K) per week
- First airdrop claim also unlocks only after the initial LP is added (
addLiquidity()) - Airdrop is claimed directly as $DGR (no pVDGR voucher involved)
Why points-based?
- Rewards engaged users instead of farmed wallets
- Point values are small enough to prevent sybil farming from being profitable
- The 500K/week cap keeps distribution healthy and spread across many wallets
LPManager Reserve
The remaining 550M DGR (55%) is held by LPManager and deployed through automated triggers:
- Add-liquidity events on buy triggers, and on sell triggers until unique wallets exceed 5,000 (tier 3 tax) — 10% chance in Tier 1, 3% otherwise
- Buyback-and-burn events on sell triggers only after unique wallets exceed 5,000 — 10% chance in Tier 1, 3% otherwise
- Events queued by transaction on chain, and triggered by kraken immediately. if events not triggered after queued in 3 hours the function will be fallback to communty.
- Manual triggers by Kraken or the devs for ecosystem adjustments later.
🔒 LP Token Security: All LP tokens generated from any add-liquidity operation (automated or manual) are held inside the LPManager contract. These LP tokens cannot be transferred, removed, or withdrawn under normal operating conditions — not even by the devs or Kraken. The only way LP tokens can be unlocked is through the emergencyWithdrawAll() function, which exclusively activates during the Termination Event (see ⚠️ Termination Event section). This means liquidity is effectively locked from the moment it is added until any potential project termination, giving holders verifiable assurance that LP cannot be rugged.
2. Tax System
2.1 Dynamic Tax Tiers
Tax rates change based on the number of unique wallets that have interacted with the token. This creates natural economic pressure:
| Unique Wallets | Buy Tax | Sell Tax | Max TX |
|---|---|---|---|
| 0 – 1,000 (Tier 1) | 3% | 12% | 10% of LP balance |
| 1,001 – 5,000 (Tier 2) | 3% | 6% | 10% of LP balance |
| 5,001+ (Tier 3) | 3% | 6% | No limit |
Why these numbers?
- 12% sell tax in Tier 1 — Strong deterrent against early dumps. If you buy early, you pay a premium to sell.
- 3% buy tax across all tiers — Consistent, predictable entry cost.
- 10% max TX — Simple, punishes whales. Disappears at 10K wallets.
- 0.001 ETH minimum buy — Wallet registration threshold.
2.2 Tax Flow
When a buy or sell occurs, tax is collected in $DGR tokens and accumulates in the contract (pendingTaxTokens).
Tax swap — primary (inline on every sell): On every sell transaction, the contract automatically swaps all accumulated DGR tax → ETH inline via Uniswap V2 Router (_autoSwapTax()), then immediately distributes the ETH to all pools and Dev/Treasury Wallet — all in the same transaction. Users never pay extra gas for this swap because it piggybacks on the seller's existing transaction.
Tax swap — fallback (Kraken trigger): If no sell transactions occur for an extended period (accumulated tax reaches 0.5% of LP balance), Kraken Bot triggers swapPendingTax() as fallback to perform the same swap + distribution.
Distribution allocation:
| Destination | Share |
|---|---|
| KOTH Pool | 27% |
| Referral Pool | 3% |
| LP Manager | 20% |
| Blitz Hill Pool | 20% |
| Lottery Pool | 10% |
| Staking Pool | 10% |
| Dev/Treasury Wallet | 10% |
2.3 Referral Rewards — 0.2% of Referee Trading Volume
- 3% of ETH tax is routed to the
ReferralPoolcontract (KOTH share reduced from 30% to 27%) to fund referral rewards. - Referrers earn 0.2% (20 bps) of their referee's buy + sell volume (post-tax, in ETH). Volume is computed by the backend from on-chain events (
Swapon the pair +Transferon the token) starting from the referee's binding block. - Binding is exclusively pushed from airdrop-bot data via
ReferralPool.setReferrersFor()(Kraken/dev only). There is no publicsetReferrer— manual binding can be gamed by typing an arbitrary wallet (e.g., a second wallet owned by the same user) without real referral proof. - Airdrop referrals auto-convert to mainnet referrals by reading the bound wallet address from the bot data — no user signature required; already-bound entries are skipped (idempotent).
- Referrers claim via
claim(); the un-referred/surplus pool balance is swept to the Dev/Treasury Wallet as additional promo funds.
2.4 Dev/Treasury Wallet Allocation (10% of Tax)
All expenses from the Dev/Treasury Wallet are recorded and reported transparently on the Degen Royale website/miniapp for the community to monitor.
3. Game Mechanics
3.1 🎰 Lottery
How it works: Every buy generates a 6-digit ticket number. If it matches the previous buyer's ticket — the previous buyer wins!
Activation:
- Lottery activates when pool balance reaches 0.1 ETH (0.005 ETH testnet)
- All buys participate — no minimum buy requirement
Payout floor (pool growth):
- Prizes are only queued while the free pool (balance minus reserved-for-winners) is at least the activation threshold
- Below it, tickets and matches keep running but wins are skipped (
MatchSkippedPoolLow) until the pool recovers — the pool rebuilds from tax instead of being slowly drainedKey rules:
- Ticket is generated from transaction-specific seed (
blockhash(block.number-1)+ timestamp + nonce + sender + receiver) - Match is checked from trailing digits (right to left)
Match & Rewards:
| Digit Match | Multiplier | Probability |
|---|---|---|
| 1 digit | 0.1x | ~10% |
| 2 digits | 5x | ~1% |
| 3 digits | 30x | ~0.1% |
| 4 digits | 100x | ~0.01% |
| 5 digits | 300x | ~0.001% |
| 6 digits | 1,000x | ~0.0001% |
Prize rules:
- Max win: 5% of pool balance per ticket (cap)
- Prize split: 90% winner / 5% staking / 5% Dev/Treasury Wallet
- prize reward queued by buy transaction on chain, triggered by kraken, fallback to community after 10 minutes.
Match 1 toggle:
- Match 1 (0.1x) is enabled by default — active from launch
- At 1,000 unique wallets since activation (testnet: 100), Match 1 auto-disables — no manual disable function exists
- Reactivation requires a successful community vote; the devs then execute
enableMatchOne(duration)with a chosen duration (min 1 hour mainnet / 10 minutes testnet, max 30 days), after which Match 1 auto-disables via a timer - There is no manual disable — deactivation is always automatic (wallet threshold counts new unique wallets since activation; timer after a voted reactivation)
- Higher matches (2-6 digits) are always active regardless of wallet count
Example:
Previous buyer: ticket 555836
You buy: ticket 555831
Check from right: 1≠6 → no match ❌
Previous buyer: ticket 555836
You buy: ticket 534836
Check from right: 6=6, 3=3, 8=8 → 3 digits match! 🎉
Previous buyer wins → 30x multiplier!
3.2 👑 King of the Hill (KOTH)
How it works: Compete to hold the highest single buy. Your score decays over time — creating urgency and opportunities for challengers. Hold #1 for 10 minutes and you win 50% of the pool!
Scoring — Highest Single Buy + Decay:
- Your score = your largest single buy transaction (in $DGR)
- Leader's score decays over time:
score = highestBuy × max(0, 1 - k × t²) - After ~9 minutes, leader's score drops to ~50% of their highest buy
- Challengers can overtake once their highest buy exceeds the leader's decayed score
- Staking reduces your highest buy (lowering your competitive position)
Why decay?
- Creates dynamic competition — no "buy once and sleep"
- Smaller buyers can overtake whale leaders after decay kicks in
- Every new leader gets a fresh 10-minute hold window
- Automatic on-chain leader rotation — no manual trigger needed
Activation:
- Round 1: Pool ≥ 1 ETH + ≥ 100 unique wallets — must activate within 14 days after the first LP is added (the round-1 clock starts when LP enters the pair, not at deployment)
- Round 2+: Pool back to its ATH (all-time high) balance + ≥ 10 distinct wallets bought after the previous round ended
- Window: the next round gets 50% of the last round's duration to activate (rounded up to whole days, minimum 1 day, maximum 30 days mainnet / 3 days testnet) — the longer the community kept the previous round alive, the more time it gets
- Challenge: Community must work together to meet activation requirements — no shortcut
Rules:
- Top-10 leaderboard tracked on-chain (sorted by highest buy)
- Leader rotation is automatic — contract checks on every buy
- Scoring stays open until the current leader completes their 10-minute hold — every new leader gets a full, challengeable window
Defend & Overtake:
- Defend: leader buys ≥
peak + (decayed score / 2)→ peak updates, timer does NOT reset. In the last 30 seconds of the hold, defending is penalized: the leader must buy ≥ 2× their peak - Overtake: challenger buys ≥
decayed leader score + 1→ becomes leader, timer resets - Same-block rule: if defend and overtake land in the same block, defend wins
- If leader is overtaken → timer resets for new leader
- Once hold achieved → pool balance snapshotted → WINNER!
Prize:
- 50% pool → winner (90%) / 5% staking / 5% Dev/Treasury Wallet
- Winner gets 45% of pool net (50% × 90%)
- prize reward queued by buy transaction on chain, triggered by kraken, fallback to community after 10 minutes.
⚠️ Termination Event
The termination event is an automated on-chain safety mechanism — NOT a manual override by the devs.
How it works:
- KOTH requires community participation to activate (pool balance + wallet threshold)
- Round 1 must activate within 14 days after the first LP is added
- Round 2+ must activate within 50% of the last round's duration (rounded up to whole days, minimum 1 day, maximum 30 days mainnet / 3 days testnet)
- If a round fails to activate in time, the termination sequence triggers automatically
- The devs CANNOT trigger this manually — the smart contract checks
block.timestampagainst the deadline. Only the on-chain clock determines termination. - Because the window scales with how long the community kept the last round alive, termination effectively only happens when the community is truly inactive.
Termination sequence:
- Buys are disabled → protects remaining holders from further exposure
- 7-day sell-only exit window opens → users can exit at any time
- After exit window → remaining funds (ETH + DGR + LP tokens from LPManager) are sweepable by the devs for community-directed use
Why this exists:
- Without termination, ETH would be locked in contracts forever if the project dies
- The sweep gives the community a chance to decide: restart, redistribute, or wind down
- The devs are stewards, not owners — the community votes on what happens next
This is a community challenge:
- Keep KOTH active = keep the project alive
- If the community stops participating for longer than the round window, the project enters termination
- No single person can kill or save the project — it requires collective action
A promise from the devs: We did not promise that the project will live forever, but we promise to do the best to make that alive. The final decision always belongs to the community.
3.3 ⚡ Blitz Hill (Hourly Competition)
How it works: Hourly rounds — participants compete through balanced buy-and-sell activity. The scoring formula rewards both volume and consistent two-sided participation. Top-5 leaderboard is displayed; only top-3 receive ETH payouts.
Scoring Formula:
Score = (BuyVolume + SellVolume) × sqrt(min(BuyTx, SellTx, MAX_TX))
- BuyVolume / SellVolume: Cumulative DGR traded this round (post-tax)
- BuyTx / SellTx: Number of qualified buy and sell transactions
- MAX_TX = 50: Maximum transactions counted toward the sqrt bonus per wallet per round (caps bot advantage)
- sqrt() provides diminishing returns on transaction count — encourages balanced activity over pure spam
- Staking reduces buy volume (reduces score proportionally)
Why this formula?
- Activity-first design: rewards active participants, not just capital
- Separated from KOTH: whales compete in KOTH (capital game), active traders compete in Blitz Hill (activity game)
- Bot-resistant: sqrt() diminishing returns + MAX_TX cap limits bot dominance
- Tax is the natural equilibrium: each round-trip costs ~15% in tax, making grinding self-limiting
Activation:
- Round 1: Pool ≥ 0.5 ETH + ≥ 100 unique wallets
- Round 2+: Pool must return to its ATH (all-time high) balance + ≥ 10 distinct wallets must buy after the previous round ends
- After finalization, Kraken (or community fallback) calls
activateRound()— rounds do NOT auto-start - Scoring pauses after round timer expires — activity during gap doesn't count
- Each new round starts fresh: leaderboard resets, scores reset to zero
- Emergency Override:
manualActivateRound()— devs only and requires a passed community vote (one-shot approval); bypasses activation requirements, for dead-project push - Anti-drain: Minimum 10 unique traders required per round. If fewer participate, round finalizes but NO payout occurs — funds stay in pool. Prevents single-wallet win-by-default attacks.
Leaderboard:
- Top-5 displayed (for community engagement)
- Only top-3 receive payouts
Prize distribution (from pool balance):
| Rank | Pool Share | Winner (90%) | Staking (5%) | Treasury (5%) |
|---|---|---|---|---|
| 🥇 1st | 12% | 10.8% | 0.6% | 0.6% |
| 🥈 2nd | 5% | 4.5% | 0.25% | 0.25% |
| 🥉 3rd | 3% | 2.7% | 0.15% | 0.15% |
- Minimum reward threshold: Rewards below 0.0001 ETH are rolled back into the pool instead of being paid out
- Remaining 80% stays in pool and carries over to next round
- Payouts are triggered by Kraken after round finalization, fallback to community after 10 minutes.
3.4 💎 Staking
How it works: Stake $DGR to earn a share of ETH rewards from game pools and tax distribution.
Reward sources:
- 10% of every tax distribution
- 5% of every game prize (Lottery, KOTH, Blitz Hill)
- ERC20 airdrops (managed by devs)
Drip mechanism: Rewards don't go directly to the accumulator — they go to a global pool, then 2% drips every 5 minutes to the reward accumulator. The slower drip makes reward distribution smoother and keeps the pool from emptying too quickly between volume spikes.
ETH/ERC20 in → Global Pool → dripped every 5 minutes, allocation per drip depend how long the erc20 drop will be active → Accumulator → Claim
Unstake:
- Lock 3 days from last stake
- Lock lifted immediately if project terminated (automated via same 14-day KOTH inactivity trigger — no manual override)
Security:
- Only the devs can send ERC20 to the staking pool
- The devs can freeze malicious tokens
- 3-layer protection: whitelist + devs-only distribution + freeze
3.5 🎫 Presale & Vesting
Self-hosted presale contract (no third-party platform):
- Sells pVDGR (not DGR directly)
- Allocation: 200M pVDGR
- Price: min 10,000,000 pVDGR per ETH
- Softcap: 2 ETH
- Hardcap: 20 ETH
- Min buy: 0.001 ETH
- Max buy: 1 ETH
- pVDGR: 100% distributed to participant wallet after finalization. User decides whether to stake.
Fund Allocation:
- 80% ETH raised → Initial LP
- 20% ETH raised → TreasuryOps & early marketing
Initial LP:
- 150M $DGR + up to 16 ETH LP (80% of hardcap; added via
addLiquidity()after finalize) - First DGR claim (presale vesting) & first airdrop claim require the initial LP to be added — pVDGR itself can be claimed right after finalization
Presale Voucher (pVDGR):
- Each pVDGR represents a claim right to DGR
- pVDGR stakers earn ETH rewards at 0.7x the rate of DGR stakers
- 100% pVDGR sent to participant wallet on claim — user chooses to stake or hold
- Earn ETH from game pools while vesting
Vesting Mechanism:
- Claims 1-2: 5% of total allocation (max 250,000 DGR/week) — claimable after TGE, tradeable immediately
- Claims 3+: 10% of total allocation (max 500,000 DGR/week) — cap binds only if 10% exceeds 500K (allocation ≥5M DGR)
- Users with allocation <5M DGR: claim full 5% then 10% per week (cap rarely binds)
- Claim process:
- User ensures pVDGR is in their wallet (unstake from StakingPool first if staked)
- User calls
claim()on Presale contract - pVDGR is burned proportionally
- DGR sent to user (up to 500K/week)
Note: ETH rewards from pVDGR staking must be claimed separately via StakingPool.
Why this design?
- max 500K/week cap automatically slows whale dumps
- pVDGR staking keeps presale buyers engaged during vesting
- Trustless — all mechanics enforced on-chain
4. LP Management
4.1 Automated System
The LP Manager holds 550M $DGR reserve and manages liquidity through a queue system:
| Trigger | Action | Probability |
|---|---|---|
| Buy | Add liquidity (ETH + DGR) | 10% (Tier 1) / 3% (Tier 2+) |
| Sell (≤ 5,000 unique wallets) | Add liquidity (ETH + DGR) | 10% (Tier 1) / 3% (Tier 2+) |
| Sell (> 5,000 unique wallets) | Buyback & burn DGR | 10% (Tier 1) / 3% (Tier 2+) |
How it works:
- Every buy/sell → 10%/3% chance to queue a trigger
- Kraken processes queue → executes add liquidity (buy always; sell until 5,000 unique wallets) or buyback (sell only after 5,000 unique wallets)
- Amount per trigger: 10-60% of ETH balance (random)
Fallback: If Kraken goes offline for 3 hours, anyone can trigger.
4.2 Manual Triggers
The devs and Kraken can trigger LP operations, but require community voting approval for each execution:
| Function | Access | Use Case |
|---|---|---|
manualAddLiquidity(eth, dgr) | Devs/Kraken + community vote | Add LP at specific ratio |
manualBuybackAndBurn(eth) | Devs/Kraken + community vote | Burn DGR at any time |
4.3 Community Governance (VotingContract)
All manual triggers by the devs are gated by community voting. The VotingContract enforces a stake-to-vote mechanism — one vote per function activation.
Parameters (hardcoded):
| Parameter | Value |
|---|---|
| Start vote stake | 0.1% of circulating supply |
| Voting duration | 7 days |
| Success threshold | ≥ 10% of circulating supply staked |
| Unstake (success) | 99% returned, 1% auto-burned |
| Unstake (failed) | 100% returned, no penalty |
Circulating supply = total supply − LPManager holdings − Presale (vesting) holdings − burned. Used for both the start-vote stake and the success threshold. (Vesting lives inside the Presale contract — there is no separate vesting contract.)
How it works:
- Start vote: Anyone stakes 0.1% of circulating supply to create a proposal for a specific function
- Voting phase: Anyone can stake any amount of DGR to support the proposal (7 days)
- Finalize: If total staked ≥ 10% of circulating supply → proposal passes (even before 7 days). If 7 days pass without reaching threshold → proposal fails
- Execute: The devs call the gated function → approval consumed (one-shot)
- Unstake: Voters withdraw their DGR (with 1% burn if vote succeeded)
Functions requiring community approval:
| Function | Contract | Purpose |
|---|---|---|
manualAddLiquidity() | LPManager | The devs manually add liquidity |
manualBuybackAndBurn() | LPManager | The devs manually trigger buyback |
manualActivateRound() | BlitzHillPool | Devs emergency round activation |
One-shot rule: Each approval is consumed on execution. The devs must create a new vote for every function call. No reuse, no shortcuts.
5. Architecture
5.1 Smart Contract Layer
┌─────────────────────────────────────────────────────┐
│ DGRToken (ERC20) │
│ • Tax collection on transfer │
│ • Wallet counting & tier management │
│ • Max TX enforcement │
│ • Support contract routing │
└────────────┬────────────┬────────────┬──────────────┘
│ │ │
┌────────▼──┐ ┌──────▼──────┐ ┌─▼───────────┐
│ KOTH │ │ Lottery │ │ Blitz Hill │
│ Pool │ │ Pool │ │ Pool │
│ (30% tax) │ │ (10% tax) │ │ (20% tax) │
└────────┬──┘ └──────┬──────┘ └─┬───────────┘
│ │ │
┌────────▼────────────▼────────────▼───────────┐
│ Staking Pool │
│ (10% tax + 5% of prizes) │
└──────────────────────────────────────────────┘
│
┌────────▼────────────────────────────────────┐
│ LP Manager │
│ (20% tax + 550M DGR reserve) │
└─────────────────────────────────────────────┘
5.2 Off-Chain Layer
┌─────────────────────────────────────────────────────┐
│ Kraken Bot │
│ • Cron scheduler (30s / 5min / hourly) │
│ • Event monitoring │
│ • Transaction signing & submission │
│ • Manual LP management triggers │
│ • Local dashboard (WebSocket + REST) │
└─────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────┐
│ Telegram Bot (@DegenRoyaleDGR_bot) │
│ • /status — Full ecosystem status │
│ • /token, /lottery, /koth, /blitz, /staking, /lp │
│ • Auto-notifications (winners, tax swaps) │
│ • /whitepaper, /guide, /challenge │
└─────────────────────────────────────────────────────┘
5.3 Architectural Principle: Contracts Decide, Kraken Triggers
All game logic, winner selection, and reward distribution are decided on-chain by smart contracts. Kraken Bot is only a gas payer that triggers functions — it never makes decisions, never selects winners, and never bypasses contract rules.
Redundancy layers:
- Fully permissionless functions:
checkAndDeclareWinner()can be called by anyone - Dev/Treasury Wallet backup: The devs can trigger any function immediately
- Community fallback: After delay (10 min for games, 3 hours for LP/Tax)
5.4 Fee Transparency & Gas Efficiency
What users pay (and nothing more):
| Fee | When | Amount | Goes to |
|---|---|---|---|
| Buy Tax | Every buy | 3% of DGR | Swapped → pools + Dev/Treasury Wallet |
| Sell Tax (Tier 1) | Sell (0–1K wallets) | 12% of DGR | Swapped → pools + Dev/Treasury Wallet |
| Sell Tax (Tier 2–3) | Sell (1K+ wallets) | 6% of DGR | Swapped → pools + Dev/Treasury Wallet |
| Network Gas | Every tx | ~$0.00015–$0.0002 | L2 validators |
No shadow fees:
- Tax swap happens inline on every sell (piggybacking seller's gas) — Kraken only triggers the fallback if no sells occur
- Lottery, KOTH, Blitz scoring run inline during swap — amortized across user's swap gas
- All game hooks add only ~20,000–30,000 gas — roughly 15–20% overhead
5.5 Security Model
- Kraken = gas payer, not custodian — never holds pooled ETH
- Contracts validate everything — Kraken triggers, contracts enforce rules
- Hardcoded parameters — no admin function can change economic rules post-deploy
- ReentrancyGuard — all functions that transfer ETH are protected
- Non-upgradeable — what you see is what you get
- BURN_ADDRESS exempt — transfers to burn address don't trigger game mechanics
- Max TX snapshot — LP balance locked per-block to prevent manipulation
- Community Voting Gate — The devs cannot trigger manual LP/game functions without community approval (stake-to-vote, 7-day period, 10% supply threshold)
6. Deployment
6.1 Deployment Order
- Deploy all 9 contracts: DGRToken, LPManager, LotteryPool, KOTHPool, BlitzHillPool, StakingPool, Presale, pVDGRToken, VotingContract
- Call
setupSupportContracts()on DGRToken - Transfer 550M DGR to LPManager
Presale.addLiquidity()→launchWithLiquidity()to create initial LP (150M DGR + 80% of raised ETH)- Whitelist reward tokens via
allowRewardToken()on StakingPool - Configure Kraken Bot with contract addresses
- Configure Telegram Bot with contract addresses
6.2 Testnet Parameters
| Parameter | Testnet | Mainnet |
|---|---|---|
| LP | 0.011 ETH + 100M DGR (manual dev LP) | up to 16 ETH + 150M DGR (via Presale.addLiquidity) |
| Min buy counted as unique wallet | 0.00001 ETH | 0.001 ETH |
| Sell tax tier caps | 300 / 500 / 501+ wallets | 1,000 / 5,000 / 10,000+ wallets |
| Presale hardcap | 0.02 ETH | 20 ETH |
| Presale softcap | 0.002 ETH | 2 ETH |
| Presale min buy | 0.00001 ETH | 0.001 ETH |
| Presale max buy | 0.001 ETH | 1 ETH |
| Presale duration | 1 day | 7 days |
| Presale vesting | 5% (max 250K) first 2 claims, then 10% (max 500K); interval 5 min | 5% (max 250K) first 2 claims, then 10% (max 500K) per week |
| KOTH hold | 5 min | 10 min |
| KOTH Round 1 activation | pool ≥ 0.01 ETH + 100 unique wallets | pool ≥ 1 ETH + 100 unique wallets |
| KOTH Round 2+ activation | pool back to ATH + 10 new buy wallets | pool back to ATH + 10 new buy wallets |
| KOTH failure (Round 1) | 7 days (from first LP) | 14 days (from first LP) |
| KOTH failure (Round 2+) | 50% of last round duration (min 1 day, max 3 days) | 50% of last round duration (min 1 day, max 30 days) |
| Blitz round | 30 min | 1 hour |
| Blitz Round 1 activation | pool ≥ 0.005 ETH + 100 unique wallets | pool ≥ 0.5 ETH + 100 unique wallets |
| Blitz Round 2+ activation | pool back to ATH + 10 new buyers | pool back to ATH + 10 new buyers |
| Lottery activation | 0.005 ETH | 0.1 ETH |
| Lottery Match 1 auto-disable | 100 unique wallets since activation | 1,000 unique wallets since activation |
| Staking lock | 1 hour | 3 days |
| Staking drip | 2% / 5 min | 2% / 5 min |
| Staking ERC20 reward window | 2 hours | 24 hours |
| Voting start stake | 0.1% of circulating supply | 0.1% of circulating supply |
| Voting success threshold | ≥ 10% of circulating supply staked | ≥ 10% of circulating supply staked |
| Voting duration | 2 hours | 7 days |
7. Risk Factors
- Smart contract risk — Internally audited, third-party audit pending
- Liquidity risk — Initial LP is up to 16 ETH + 150M DGR (80% of presale hardcap); large trades will have high slippage
- Network risk — Base L2 congestion could delay Kraken Bot triggers
- Regulatory risk — Memecoins operate in uncertain regulatory environment
- Parameter immutability — All economic parameters are hardcoded
8. Roadmap
| Phase | Milestone | Status |
|---|---|---|
| Phase 1 | Smart contract development | ✅ Complete |
| Phase 2 | Kraken Bot + Dashboard | ✅ Complete |
| Phase 3 | Telegram Bot (@DegenRoyaleDGR_bot) | ✅ Complete |
| Phase 4 | Community documentation | ✅ Complete |
| Phase 5 | Internal audit + patching | ✅ Complete |
| Phase 6 | Testnet deployment (Base Sepolia) | 🔄 In Progress |
| Phase 7 | Testnet simulation & testing | ⏳ Pending |
| Phase 8 | Third-party audit | ⏳ Pending |
| Phase 9 | Mainnet deployment | ⏳ Pending |
| Phase 10 | Community launch | ⏳ Pending |