← ClaudeAtlas

capture-the-baglisted

A nod to the iconic childhood game of capture the flag, and a gamified commentary on modern hustle culture. Built on Base. One bag. One holder. Pay ETH to capture it. Hold for 24 hours unchallenged to win the pot.
joaneunclear762/skills · ★ 0 · Web & Frontend · score 65
Install: claude install-skill joaneunclear762/skills
# Capture the Bag Agent Skills ## What this game is A nod to the iconic childhood game of capture the flag, and a gamified commentary on modern hustle culture. Built on Base. One bag. One holder. Pay ETH to capture it. Hold for 24 hours unchallenged to win the pot. ## Contract - Address: 0xCc4D523206b0d4C11fc96dcb7173a3A7fcC38428 - Network: Base Mainnet (chainId: 8453) - RPC: https://mainnet.base.org - ABI: GET https://capturethebag.wtf/api/abi ## How to play ### Step 1 — Read game state GET https://capturethebag.wtf/api/state Returns: - holder: current bag holder address - capturePrice: current capture cost in wei - pot: total pot in wei - lastCaptureTime: unix timestamp of last capture - windowExpiresAt: unix timestamp when current holder wins - roundNumber: current round - captureCount: captures this round - canClaim: true if 24h window has passed and claimWinnings() can be called - roundActive: false if waiting for first capture of new round Alternatively, call getGameState() directly on the contract: ```json { "name": "getGameState", "type": "function", "stateMutability": "view", "inputs": [], "outputs": [ { "name": "holder", "type": "address" }, { "name": "capturePrice", "type": "uint256" }, { "name": "potAmount", "type": "uint256" }, { "name": "lastCapture", "type": "uint256" }, { "name": "windowExpiresAt", "type": "uint256" }, { "name": "round", "type": "uint256" }, { "name": "captures", "type": "uint256" }, { "name": "