Skip to content

Tokenomics

Chaos Protocol's tokenomics design aims to create a sustainable ecosystem, achieving token value circulation through transaction taxes, burning mechanisms, and betting systems.

Token Basic Information

PropertyValue
Token NameChaos
Token SymbolChaos
Initial Supply100,000,000 (100M)
ChainBSC (Binance Smart Chain)
StandardBEP-20

Supply Distribution

Initial Distribution

Initial Supply: 100,000,000 Chaos

┌─────────────────────────────────┐
│  Initial Liquidity (PancakeSwap) 50%   │
│  50M Chaos + 80K USDT           │
├─────────────────────────────────┤
│  Private Investors (603) 50%          │
│  200-2000 USDT/Address              │
│  Token + LP Distributed by Ratio           │
└─────────────────────────────────┘

The initial supply is all minted to tx.origin (deployer address) during contract deployment, then:

  1. 50,000,000 Chaos + 80,000 USDT for initial liquidity
  2. Remaining tokens distributed to 603 private investors via BatchInit.s.sol

Private Investor Distribution

Private investors each invest 200-2000 USDT, receiving Token and LP at a fixed ratio:

Investment (USDT)Token ReceivedLP ReceivedRatio
2000312,500 Chaos12,500 LPToken = USDT × 156.25
1000156,250 Chaos6,250 LPLP = USDT × 6.25
50078,125 Chaos3,125 LP
40062,500 Chaos2,500 LP
30046,875 Chaos1,875 LP
20031,250 Chaos1,250 LP

Distribution Ratio:

  • Token : USDT = 156.25 : 1
  • LP : USDT = 6.25 : 1

Distribution Script: script/BatchInit.s.sol

solidity
// Execute batch airdrop
uint256[] memory tokenAmounts = BatchInitData.getTokenAmounts();
token.batchAirdrop(addrs, amts);

// Execute BurnPool initialization (optional)
uint256[] memory usdtAmounts = BatchInitData.getUsdtAmounts();
burnPool.batchInitialize(addrs, amts);

// Execute Vault LP distribution (optional)
uint256[] memory lpAmounts = BatchInitData.getLpAmounts();
vault.batchCreditLp(addrs, amts);

Circulating Supply Changes

Due to the burning mechanism, circulating supply continuously decreases:

Circulating Supply = Initial Supply - Cumulative Burned Amount

BatchInit Initialization Flow

Initialization after contract deployment via BatchInit.s.sol script:

mermaid
graph TD
    A[Deploy Contract] --> B[Mint 100M Chaos to Deployer]
    B --> C[Add Initial Liquidity]
    C --> D[50M Chaos + 80K USDT → PancakeSwap LP]
    D --> E[batchAirdrop]
    E --> F[603 Private Addresses Receive Tokens by Ratio]
    F --> G[Optional: batchInitialize]
    G --> H[Optional: batchCreditLp]
    H --> I[Initialization Complete]

Initial Liquidity:

solidity
// Initial liquidity added to PancakeSwap
uint256 usdtAmt = 80_000 ether;    // 80,000 USDT
uint256 tokenAmt = 50_000_000 ether; // 50,000,000 Chaos (50% supply)

Initialization Data: test/BatchInitData.sol

solidity
library BatchInitData {
    function getUsers() internal pure returns (address[] memory) {
        address[] memory users = new address[](603);
        users[0] = 0xaD71bAdbA129870c1bc8B2f8b6FF8f1A0978B4A9;
        users[1] = 0x4b670a235B77e621894F84d9e23cf5Dd869C3AD1;
        // ... 603 addresses total
    }

    function getTokenAmounts() internal pure returns (uint256[] memory) {
        // Distributed by USDT investment ratio: Token = USDT × 156.25
        amounts[0] = 31250000000000000000000;   // 200 USDT → 31,250 Chaos
        amounts[602] = 312500000000000000000000; // 2000 USDT → 312,500 Chaos
        // ...
    }

    function getLpAmounts() internal pure returns (uint256[] memory) {
        // Distributed by USDT investment ratio: LP = USDT × 6.25
        amounts[0] = 1250000000000000000000;    // 200 USDT → 1,250 LP
        amounts[602] = 12500000000000000000000;  // 2000 USDT → 12,500 LP
        // ...
    }
}

Transaction Tax Mechanism

Tax Rate Structure

solidity
uint256 public constant FEE_RATE = 300; // 3%

Each transaction involving PancakeSwap trading pair charges 3% tax.

Tax Distribution

Transaction tax distribution:

Transaction Tax (3%)

    ├──→ 80% ──→ BurnPoolV2 (Dividend Pool)

    └──→ 20% ──→ BurnPoolV2 (Prize Pool)
DistributionPercentagePurpose
Dividend Pool80%FIFO queue user dividends
Prize Pool20%Boost acceleration rewards

Tax Flow Example

假设某用户卖出 10,000 Chaos:

卖出 10,000 Chaos

扣除 3% 税费 = 300 Chaos

用户实际收到 9,700 Chaos

300 Chaos 通过 PancakeSwap 换成 USDT

假设换得 300 USDT

├──→ 240 USDT ──→ BurnPoolV2 分红池 (80%)
└──→ 60 USDT ───→ BurnPoolV2 奖金池 (20%)

Burning Mechanism

BurnPoolV2 Burning Flow

User token flow when participating in burning:

With Referrer:

User Invests 100 USDT

┌───────────────────────────────────┐
│  40 USDT → Add LP (All to User)   │
│  20 USDT → Referral Reward        │
│           ├─ 10 USDT → Vault LP   │
│           └─ 10 USDT → Tokens     │
│  35 USDT → Buy Tokens for Tax     │
│   5 USDT → Buy Tokens to Burn     │
└───────────────────────────────────┘

LP Deposited to VaultV5 → Enter FIFO Dividend Queue

Without Referrer:

User Invests 100 USDT

┌───────────────────────────────────┐
│  40 USDT → Add LP (All to User)   │
│  55 USDT → Buy Tokens for Tax     │
│   5 USDT → Buy Tokens to Burn     │
└───────────────────────────────────┘

LP Deposited to VaultV5 → Enter FIFO Dividend Queue

Token Burning

Each burn destroys a portion of tokens:

ScenarioBurn Ratio
No ReferrerHigher (most remaining tokens burned)
With ReferrerLower (some given to referrer)

Deflationary Effect

As burning progresses, circulating supply continuously decreases:

时间 →
供应量 ↓

初始供应 (1亿)

燃烧 #1 → 销毁 X Chaos

燃烧 #2 → 销毁 Y Chaos

   ...

流通供应持续减少

Revenue Model

BurnPoolV2 Revenue

User revenue from burning:

MetricValue
Minimum Investment100 USDT
Target Return2x (200 USDT)
Revenue SourceTransaction tax dividends
Distribution MethodFIFO Queue

Revenue Calculation Example

用户投入: 1000 USDT
目标回报: 2000 USDT

等待交易税积累

当分红累计达到 2000 USDT 时

用户可以提取全部收益

Boost Acceleration

Referrers can receive accelerated returns:

推荐人A推荐用户B

用户B在8小时内完成燃烧

推荐人A从奖金池获得额外奖励

加速A的出队速度

VaultV5 Betting Model

Betting Mechanism

Users can bet on token price movements:

创建者 (Creator)          接单者 (Taker)
    │                         │
    │ USDT                    │ LP代币
    ↓                         ↓
┌───────────────────────────────┐
│        对赌合约               │
│  基准价: 创建时的代币价格      │
└───────────────────────────────┘

        3天后结算

    ┌───────┴───────┐
    ↓               ↓
价格上涨          价格下跌
    ↓               ↓
利润各50%        创建者保本
                 接单者承担亏损

Revenue Limits

  • Maximum profit: 2x investment
  • Lock time: 30 minutes (after creation)
  • Contract validity: 3 days

Economic Cycle

Complete Economic Flow

mermaid
graph TD
    A[User Transaction] -->|3% Tax| B[TaxToken]
    B -->|80%| C[BurnPoolV2 Dividend Pool]
    B -->|20%| D[BurnPoolV2 Prize Pool]
    
    E[User Burn] -->|USDT| C
    E -->|Token Burn| F[Deflation]
    
    C -->|2x Return| G[User Revenue]
    D -->|Boost Reward| H[Referrer Acceleration]
    
    E -->|LP| I[VaultV5]
    I -->|Betting| J[User Betting]
    J -->|P&L Settlement| G
    
    G -->|Reinvest| E

Value Cycle

  1. Transaction Generates Tax → Increases dividend pool
  2. User Burns → Receives LP and dividend rights
  3. Dividends Accumulate → User receives returns
  4. Returns Reinvested → Continue burning
  5. Token Burning → Reduces supply, increases value

Risks and Incentives

Incentive Mechanism

IncentiveDescription
Transaction Tax DividendsHold tokens to receive dividends
Burn Returns2x return target
Referral RewardsAdditional LP and token rewards
Boost Acceleration8-hour referral window for queue acceleration
Betting ReturnsProfit from price predictions

Risk Factors

RiskDescription
Market RiskToken price fluctuations affect betting results
Liquidity RiskInsufficient dividend pool funds may delay returns
Smart Contract RiskContract vulnerabilities may lead to fund loss

Key Parameters

solidity
// TaxToken
uint256 FEE_RATE = 300;           // 3% tax rate
uint256 MIN_SWAP_AMOUNT = 200;    // Minimum swap amount

// BurnPoolV2
uint256 MIN_BASKET = 100;         // Minimum investment (USDT)
uint256 MULTIPLE = 2;             // Return multiple
uint256 BOOST_WINDOW = 8 hours;   // Boost window

// VaultV5
uint256 LOCK_PERIOD = 3 days;     // Contract lock time
uint256 MIN_CONTRACT = 30;        // Minimum bet amount (USDT)
uint256 MAX_PROFIT = 2;           // Maximum profit multiple

// BatchInit Private Distribution
uint256 INVESTORS = 603;          // Number of private investors
uint256 TOKEN_RATIO = 15625;     // Token/USDT ratio (×100)
uint256 LP_RATIO = 625;          // LP/USDT ratio (×100)
uint256 MIN_INVEST = 200;        // Minimum investment (USDT)
uint256 MAX_INVEST = 2000;       // Maximum investment (USDT)

// Initial Liquidity
uint256 INITIAL_USDT = 80_000;   // Initial liquidity USDT
uint256 INITIAL_TOKEN = 50_000_000; // Initial liquidity Token (50% supply)

Chaos Protocol Documentation