LUCKY CATS招财猫 · BNB CHAIN

LUCKY CATS 招财猫

Fully on-chain pixel maneki-neko for AI agents on BNB Smart Chain. Wave the paw, invite the luck.

▶ Loading the shrine…

🏮 Live stats

⏳ Sale ends in
--days
--hrs
--min
--sec
Ends 5 Nov 2026, 23:59 WIB (UTC+7)
Free minted
– / 5000
Angpao boxes
– / 5000
Jade 翡翠
– / 100
Golden 金
– / 1000
Box price – · Forge fee – · Supply – · Waiting to reveal –

🐾 Mint

Your wallet
Not connected

Free mint · 1 per wallet

Gas only. One cat for every wallet holding a .ai Agent ID.

Odds: Common 80% · Lucky 15% · Golden 4.5% · Jade 0.5%

Angpao box 红包 · up to 10

Better odds. Payment goes straight to the treasury.

Odds: Common 55% · Lucky 30% · Golden 12% · Jade 3%

= – BNB

Reveal 开光

Every cat is sealed at mint and revealed with the hash of the next block. Anyone can push the queue: reveal(200) opens up to 200 waiting cats, yours and everyone's. Cats left unrevealed for more than 256 blocks (≈2 minutes on BSC) open as Common, so the button is here if the queue stalls.

😺 My cats

Connect a wallet to see your cats.

🧧 Market

Peer-to-peer, no approvals needed: the contract moves the cat itself. 5% goes to the treasury, 95% to the seller. Buying needs a .ai Agent ID. List your own cats from My cats.

🤖 For AI agents

Agent wallets can mint by calling the contract directly. No approvals, no off-chain signature, no allowlist. The only gate is AGENT_REGISTRY.balanceOf(msg.sender) > 0 on the SPACE ID Agent ID registry.

ItemValue
ChainBNB Smart Chain mainnet, chainId 56 (0x38)
LuckyCats (LUCKY)0x48ab7d1eddc73b329f9db049b846d547092e77df
Agent ID registry0x60B9262456dE011F7d15a54CdD8c48bAaa8B022F
Public RPChttps://bsc-dataseed.bnbchain.org

Write calls

FunctionSelectormsg.valueNotes
freeMint()0x5b70ea9f0Once per wallet. Calldata is just the selector.
mintBox(uint256 qty)0x537e5ec3boxPrice() × qty (exact)qty 1–10. Currently – wei (– BNB) each.
reveal(uint256 maxCount)0xc2ca0ac50Anyone. Use 200. No Agent ID needed.
forge(uint256[] ids)0x1019bdb6forgeFee() (exact)3 same tier, or 4 Golden → Jade. Revealed cats only.
list(uint256 id, uint256 price)0x50fd73670Price in wei. Revealed cats only.
cancel(uint256 id)0x40e58ee50
buy(uint256 id)0xd96a094alistings(id).price (exact)Agent ID needed.

Read calls

FunctionSelectorReturns
status()0x200d2ed2(totalMinted, totalSupply, freeMinted, boxesMinted, jadeCount, goldenCount, boxPrice, forgeFee, bool paused, nextToReveal, pending)
isAgent(address)0x1ffbb064bool
freeMintUsed(address)0x456cc814bool
boxPrice() / forgeFee()0xa6482858 / 0x1c1c0bdauint256 wei
tokenURI(uint256)0xc87b56dddata:application/json;base64 (SVG inside)
listings(uint256)0xde74e57b(address seller, uint96 price)
Example: raw transactions
// 1) Free mint (value 0)
{ "chainId": 56, "to": "0x48ab7d1eddc73b329f9db049b846d547092e77df",
  "data": "0x5b70ea9f", "value": "0x0" }

// 2) Two Angpao boxes: value = boxPrice() * 2
{ "chainId": 56, "to": "0x48ab7d1eddc73b329f9db049b846d547092e77df",
  "data": "0x537e5ec30000000000000000000000000000000000000000000000000000000000000002",
  "value": "<boxPrice*2 in wei>" }

// 3) Push the reveal queue (anyone)
{ "chainId": 56, "to": "0x48ab7d1eddc73b329f9db049b846d547092e77df",
  "data": "0xc2ca0ac500000000000000000000000000000000000000000000000000000000000000c8", "value": "0x0" }
Example: Foundry cast
C=0x48ab7d1eddc73b329f9db049b846d547092e77df
RPC=https://bsc-dataseed.bnbchain.org
cast call $C "isAgent(address)(bool)" $ME --rpc-url $RPC
cast send $C "freeMint()" --rpc-url $RPC --account agent
P=$(cast call $C "boxPrice()(uint256)" --rpc-url $RPC)
cast send $C "mintBox(uint256)" 2 --value $((P*2)) --rpc-url $RPC --account agent
cast send $C "reveal(uint256)" 200 --rpc-url $RPC --account agent
Custom errors (revert selectors)
NotAgent 0x0d9ab13f · AlreadyFreeMinted 0x98bdb27b · SoldOut 0x52df9fe5
BadQuantity 0x888e58a8 · WrongPayment 0x788a686f · CapReached 0xd7e991d2
BadForge 0xa1406f51 · NotRevealed 0xb2c9bc88 · NotTokenOwner 0x59dc379f
NotListed 0x665c1c57 · ListingStale 0x92ed4985 · SelfBuy 0x75a2aea0
BadPrice 0xfd1ee349 · EnforcedPause 0xd93c0665 (minting paused)

Mints are sealed until the next block's hash is final. Call reveal(200) a few blocks later if nobody else has. Unrevealed cats cannot be listed or transferred.