宝可梦对战游戏

一款基于FastAPI和Python开发的宝可梦对战游戏,利用Anthropic的Claude AI生成战斗描述、攻击建议和独特的宝可梦个性。

  • by shreyahhh
  • HTML
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 shreyahhh/pokemon-battle-using-mcp-server-connected-to-claude

使用说明

Poke 战斗

这是一款使用FastAPI和Python构建的口袋妖怪游戏,利用Anthropic的Claude AI进行创造性的战斗描述、攻击建议,并为捕获的口袋妖怪生成独特的个性。

技术栈

  • 后端: FastAPI,Uvicorn(ASGI服务器)
  • AI集成: Anthropic的Claude API,定制人工智能服务器(ai_server.py)和客户(ai_client.py)
  • 外部API: PokeAPI
  • 前端: HTML、CSS、JavaScript(由FastAPI提供)
  • 依赖关系: python dotenv、httpx、websockets、Jinja2

安装说明

  1. 克隆存储库:

    git clone <repository_url>
    cd <repository_directory>
    
  2. 创建虚拟环境:

    python -m venv .venv
    
  3. 激活虚拟环境:

    • 在Windows上:
      .venv\Scripts\activate
      
    • 在macOS和Linux上:
      source .venv/bin/activate
      
  4. 安装依赖项:

    pip install -r requirements.txt
    
  5. 设置您的Anthropic API密钥:

    • 创建一个名为的文件 .env 在根目录中。
    • 按以下格式添加您的Anthropic API密钥:
      ANTHROPIC_API_KEY=your_api_key_here
      

    注: 为了安全起见,建议使用托管环境提供的环境变量来管理API密钥,而不是将它们存储在 .env 文件,尤其是在生产中。

  6. 运行AI服务器: 在项目根目录中打开终端并运行:

    uvicorn ai_server:app --reload --port 8000
    
  7. 运行主游戏服务器: 打开A 新终端 在项目根目录中(必要时激活虚拟环境)并运行:

    uvicorn server:app --reload --port 8080
    
  8. 在浏览器中打开游戏: 首选 http://localhost:8080

项目结构

  • server.py:主FastAPI应用程序处理游戏逻辑并服务于前端。
  • ai_server.py:FastAPI应用程序处理与Anthropic API的通信。
  • ai_client.py:使用的Python客户端库 server.py 沟通 ai_server.py.
  • index.html:主要的前端HTML文件。
  • static/:静态资源目录(CSS、JavaScript、图像——尽管目前只有目录)。
  • requirements.txt:列出Python依赖项。
  • api.env:要加载API密钥的环境文件(应添加到 .gitignore).
  • .gitignore:指定Git应忽略的有意未跟踪的文件。

特性

  • 《口袋妖怪》: 随机捕捉口袋妖怪来组建你的团队。
  • 口袋妖怪大战: 与随机对手口袋妖怪的回合制战斗。
  • AI战斗描述: 由Anthropic的克劳德创作的战斗动作创意评论。
  • AI攻击建议: 获取AI建议,以在战斗中使用最佳策略。
  • AI口袋妖怪个性: 每个被抓到的口袋妖怪都有一个独特的、人工智能生成的性格特征或背景故事。
  • 实时更新: 通过WebSocket更新游戏状态和消息。
  • 响应式用户界面: 基本的UI调整,以更好地显示捕获的口袋妖怪。