Fishing Frenzy Agent

Python 3.10+ License: MIT Tools Fishing Frenzy

An autonomous AI agent that plays Fishing Frenzy — fishing, cooking, diving, quests, and economy optimization on the Ronin blockchain.

Works with any AI tool that supports MCP — Claude Code, Cursor, Cline, Windsurf, OpenClaw, and more.

The meta-game: Customize the strategy in SKILL.md to optimize your agent's decision-making. Same tools, different strategies.

Install

npx skills add unchartedgg/play-fishing-frenzy

This installs the skill and registers the MCP server. Python dependencies install automatically on first run.

Restart your AI tool, then type:

/play-fishing-frenzy
git clone https://github.com/unchartedgg/play-fishing-frenzy
cd play-fishing-frenzy/play-fishing-frenzy
bash scripts/bootstrap.sh  # installs deps + launches server

The MCP server command is: bash <path>/scripts/bootstrap.sh (stdio transport). This auto-installs Python dependencies on first run.

Replace <path> with ~/.agents/skills/play-fishing-frenzy (npx install) or your clone's play-fishing-frenzy directory.

Claude Code

claude mcp add fishing-frenzy -- bash <path>/scripts/bootstrap.sh

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "fishing-frenzy": {
      "command": "bash",
      "args": ["<path>/scripts/bootstrap.sh"]
    }
  }
}

Cline

Add to ~/.cline/mcp_settings.json:

{
  "mcpServers": {
    "fishing-frenzy": {
      "command": "bash",
      "args": ["<path>/scripts/bootstrap.sh"]
    }
  }
}

Windsurf

Add to ~/.windsurf/mcp.json:

{
  "mcpServers": {
    "fishing-frenzy": {
      "command": "bash",
      "args": ["<path>/scripts/bootstrap.sh"]
    }
  }
}

OpenClaw

openclaw mcp set fishing-frenzy '{"command":"bash","args":["<path>/scripts/bootstrap.sh"]}'

Play

Open your AI tool and type:

/play-fishing-frenzy

Your agent will:

  1. Create a new wallet and guest account (first run only)
  2. Claim daily rewards
  3. Fish until energy is depleted
  4. Sell fish for gold
  5. Complete quests and cook sashimi
  6. Buy sushi to refill energy and keep going
  7. Display a session summary with stats

Choose a strategy:

/play-fishing-frenzy grind       # Max XP, aggressive sushi buying
/play-fishing-frenzy risk        # High risk diving and NFT gameplay for rewards
/play-fishing-frenzy balanced    # Default — even split across all activities

What the Agent Can Do

System Tools Description
Fishing fish, fish_batch Cast lines at short/mid/long range
Economy sell_all_fish, buy_item, use_item Sell catches, buy sushi, manage gold
Cooking get_recipes, cook, spin_cooking_wheel Cook sashimi, earn pearls
Quests claim_daily_reward, get_quests, claim_quest Daily rewards, quest completion
Equipment equip_rod, repair_rod, collect_pet_fish Rod management, pet collection
Diving buy_diving_ticket, dive Grid-based diving game (Level 30+)
Upgrades get_accessories, upgrade_accessory Spend upgrade points on accessories
On-Chain buy_fish_tokens, stake_fish_tokens, onchain_checkin DEX swaps (RON/USDC → FISH), token staking, Karma
NFTs mint_leaderboard_chests, open_chests, collect_fish Mint, open, and collect NFT items
Wallet get_wallet_balances, get_staking_recommendation On-chain balances, staking advice
Stats get_leaderboard, get_session_stats Rankings, performance tracking

36 tools total across 11 game systems.

Demo

When you run /play-fishing-frenzy, your agent displays a live game dashboard:

╔══════════════════════════════════════════════════╗
║  🎣 FISHING FRENZY AGENT                        ║
║  Strategy: BALANCED  ·  League: Open             ║
╠══════════════════════════════════════════════════╣
║  👤 FishBot_0x3e1C  ·  Lv.25                    ║
║  ⚡ Energy: 22/30    ██████████████░░░░░ 73%     ║
║  💰 Gold: 1,075     🏆 XP: 12,450               ║
╚══════════════════════════════════════════════════╝

🎣 Cast #1  long_range ─── 🐟 Epic Tuna ★★★★ (+15 XP, 45g)
🎣 Cast #2  long_range ─── 🐟 Red Snapper ★★ (+8 XP, 22g)
🎣 Cast #3  long_range ─── ❌ Fish escaped!
🎣 Cast #4  mid_range  ─── 🐟 Golden Koi ★★★★★ (+25 XP, 80g)  🆕 NEW FISH!
🎣 Cast #5  short_range ── 🐟 Common Sardine ★ (+3 XP, 5g)

📦 SELL   Sold all fish → +238 gold (total: 1,313)
✅ QUEST  "Catch 5 fish" complete → +100 gold, +50 XP
🛒 SHOP   Bought 1× Sushi (-500g) → ⚡ +5 energy
⬆️ UPGRADE Rod Handle Lv.0 → Lv.1 (1.25% energy save chance)

╔══════════════════════════════════════════════════╗
║  📊 SESSION COMPLETE                             ║
╠══════════════════════════════════════════════════╣
║  🐟 Fish Caught:  47         ⏱️  Duration: ~8m   ║
║  💰 Gold Earned:  2,340      💰 Gold Now: 3,415  ║
║  ⭐ XP Earned:    890        📈 Level: 25 → 27   ║
║  ⚡ Energy Used:  30/30      🍣 Sushi Used: 2    ║
╠══════════════════════════════════════════════════╣
║  🏆 Best Catch: Golden Koi ★★★★★ (80g)          ║
║  📊 Efficiency: 78g/energy                       ║
╚══════════════════════════════════════════════════╝

How It Works

fishing-frenzy-agent/
├── SKILL.md                  ← Strategy brain (edit this to compete!)
├── ff_agent/
│   ├── server.py             ← MCP server — 36 game action tools
│   ├── auth.py               ← Privy SIWE wallet auth (Ronin chain)
│   ├── api_client.py         ← REST API wrapper
│   ├── fishing_client.py     ← Fishing session protocol
│   ├── diving_client.py      ← WebSocket diving protocol
│   ├── state.py              ← SQLite state persistence
│   └── wallet.py             ← Ethereum wallet management
├── scripts/
│   ├── bootstrap.sh          ← Auto-installs deps + launches server
│   ├── setup.sh              ← Full setup (multi-tool registration)
│   └── status.py             ← Agent status check
├── requirements.txt
└── LICENSE                   ← MIT

SKILL.md teaches your AI agent how to play — the game loop, decision framework, and strategy templates. Edit this file to change how your agent plays.

MCP Server (ff_agent/server.py) exposes game actions as tools that your AI agent calls autonomously. This includes blockchain interactions — the agent manages its own Ethereum wallet on Ronin, handles SIWE authentication, and can mint NFTs, open chests, and perform on-chain check-ins when funded with RON.

Customizing Your Strategy

Edit SKILL.md to change your agent's behavior:

  • Adjust fishing range preferences
  • Change sushi buying thresholds
  • Prioritize cooking over fishing
  • Set energy management rules
  • Change accessory upgrade priority

The three built-in strategies (balanced, grind, risk) are starting points. Create your own by modifying the decision rules.

Data Storage

All data is stored locally at ~/.fishing-frenzy-agent/:

  • state.db — wallet, auth tokens, session history
  • No data is sent anywhere except the Fishing Frenzy game API

Requirements

For Developers

This repo is also a reference implementation for building autonomous game agents with MCP.

Architecture

SKILL.md (strategy layer)
    ↓ reads
AI Agent (Claude, Cursor, etc.)
    ↓ calls
MCP Server (ff_agent/server.py) — 36 tools via stdio
    ↓ wraps
API Client + Fishing Client + Diving Client
    ↓ talks to
Fishing Frenzy API + Ronin Blockchain (SIWE auth, wallet ops)

Extending Strategies

  1. Edit the strategy templates in SKILL.md or add new ones
  2. Adjust thresholds in CONFIG.md
  3. The MCP tools stay the same — strategy is pure prompt engineering

Tests

python3 -m pytest tests/ --skip-live -v    # Offline suite (no API calls)
python3 -m pytest tests/ -v                # Full suite (needs live connection)

Report a Bug

Something not working? File a bug report — it takes 30 seconds.

Have an idea? Request a feature.

License

MIT — see LICENSE.