Skip to main content

play-any-game

AI游戏伴侣助手 - 当你在游戏中遇到困难、卡关、不知道怎么操作时,AI可以帮你分析游戏画面、解答问题、甚至简单操作界面帮你解决问题。不是全自动代肝,而是你的游戏伙伴,在你需要的时候伸出援手。当用户提到"帮我看下这个怎么过"、"这个怎么操作"、"卡关了"、"不知道怎么弄"时使用此技能。支持原神、崩坏星穹铁道等各类游戏。

Datos de origen

Repositorio
CGandGameEngineLearner/play-any-game
Última actividad en el origen
9 de abril de 2026 a las 15:51
Idioma detectado de SKILL.md
chino
Estrellas
6
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
play-any-game
description
AI游戏伴侣助手 - 当你在游戏中遇到困难、卡关、不知道怎么操作时,AI可以帮你分析游戏画面、解答问题、甚至简单操作界面帮你解决问题。不是全自动代肝,而是你的游戏伙伴,在你需要的时候伸出援手。当用户提到"帮我看下这个怎么过"、"这个怎么操作"、"卡关了"、"不知道怎么弄"时使用此技能。支持原神、崩坏星穹铁道等各类游戏。
version
1.4.1
# Play Any Game - AI游戏伴侣助手 ## 项目定位 **不是游戏代肝助手,而是游戏伴侣助手。** 当你玩游戏时遇到困难: - 🤔 不知道这个机关怎么解? - 😵 卡在这个Boss打不过? - 🤷 找不到NPC在哪? - 😕 不知道这个界面怎么操作? AI可以: 1. **截图分析** - 看到你的游戏画面,理解当前状态 2. **解答问题** - 告诉你该怎么解决 3. **简单操作** - 帮你点击界面、解决问题 ## 核心设计理念 **每次操作都有截图,让 AI 能看到操作后的效果,然后继续下一步操作。** ``` ┌─────────────────────────────────────────────────────────────┐ │ │ │ AI 分析截图 ──→ 执行操作 ──→ 自动截图 ──→ 返回给 AI │ │ ↑ │ │ │ └───────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ## 按钮识别方案 使用多模态大模型直接识别界面元素,通过自然语言描述定位按钮: ```bash # 通过文字描述点击按钮 python main.py click_text "地图按钮" "原神" python main.py click_text "快速编队按钮" "原神" python main.py click_text "确认按钮" "原神" ``` **优点:** - 无需预设按钮模板 - 支持动态界面 - 自然语言描述,灵活直观 - 适用于各种游戏 ## 支持的游戏 | 游戏 | AI 角色 | 窗口标题 | |------|---------|----------| | 原神 | 派蒙 | "原神" | | 崩坏:星穹铁道 | 三月七 | "崩坏:星穹铁道" | ### SOUL 切换机制 OpenClaw 使用此技能时,通过 `game` 命令切换 SOUL: ``` 用户说:我要玩原神 → OpenClaw 调用: python main.py game start 原神 → 返回: { soulPath: "games/genshin-impact/SOUL.md" } → OpenClaw 读取 SOUL.md → 替换系统提示 → AI 化身为派蒙与用户交互 用户说:不玩了 → OpenClaw 调用: python main.py game end → 返回: { soulPath: "games/default/SOUL.md" } → OpenClaw 恢复默认 SOUL ``` ## 目录结构 ``` .trae/skills/play-any-game/ ├── scripts/ # Python 核心模块 │ ├── click.py # 点击功能 │ ├── keyboard.py # 键盘功能 │ ├── screenshot.py # 截图功能 │ ├── window.py # 窗口管理 │ ├── config.py # 配置管理 │ └── gui_agent/ # 多模态 AI 识图模块 │ ├── base.py # 抽象基类 │ ├── aliyun.py # 阿里云 GUI-Plus 实现 │ └── factory.py # 工厂模式 ├── games/ # 游戏定制目录 │ ├── games.json # 游戏配置 │ ├── default/ # 默认 SOUL │ │ └── SOUL.md # OpenClaw 默认人设 │ ├── genshin-impact/ # 原神 │ │ └── SOUL.md # 派蒙角色设定 │ └── honkai-starrail/ # 崩坏:星穹铁道 │ └── SOUL.md # 三月七角色设定 ├── screenshots/ # 截图存储目录 ├── config.json # 配置文件 ├── main.py # CLI 入口 └── requirements.txt # Python 依赖 ``` ## 环境要求与安装指南 > **🤖 Agent 必读**:使用此 skill 前,必须确保 Python 3 环境和所有依赖已正确安装。请按照以下步骤逐一执行。 ### 系统要求 - **OS**: Windows 10/11(使用 Win32 API 控制窗口和鼠标) - **Python**: 3.8 或更高版本 - **网络**: 需要能访问阿里云 API(用于 AI 识图) --- ### 🐍 Step 1:检查并安装 Python 3 首先检查 Python 是否已安装: ```bash python --version ``` **如果命令不存在或版本低于 3.8**,按以下方式安装: ```bash # 推荐:使用 winget(Windows 10/11 内置包管理器) winget install Python.Python.3.12 ``` 安装完成后,**关闭并重新打开终端**,然后验证: ```bash python --version # 应输出 Python 3.12.x(或 3.8+) pip --version # 应输出 pip 版本信息 ``` > ⚠️ 若 `python` 命令仍不可用,请检查安装时是否勾选了 **"Add Python to PATH"**。可以重新运行安装程序,选择 "Modify" → 勾选 "Add Python to PATH"。 --- ### 📦 Step 2:安装 Python 依赖 ```bash # 进入 skill 目录(根据实际路径调整) cd skills/play-any-game # 安装所有依赖 pip install -r requirements.txt ``` **依赖说明:** | 包名 | 版本要求 | 用途 | |------|---------|------| | `pywin32` | >=306 | Windows 窗口管理、鼠标/键盘控制(Win32 API) | | `Pillow` | >=10.0.0 | 图像处理、截图保存 | | `opencv-python` | >=4.8.0 | 图像识别、模板匹配 | | `numpy` | >=1.24.0 | 数值计算(opencv 依赖) | | `openai` | >=1.0.0 | 调用阿里云 GUI-Plus AI 模型 API | **如果安装速度慢,使用国内镜像:** ```bash pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ``` **安装后验证依赖:** ```bash python -c "import win32api, PIL, cv2, numpy, openai; print('All dependencies OK')" ``` --- ### 🔑 Step 3:配置 API Key 此 skill 使用阿里云百炼平台的 GUI-Plus 模型进行 AI 识图。 ```bash # 方式1:命令行配置(推荐,持久保存到 config.json) python main.py config --set-api-key YOUR_DASHSCOPE_API_KEY # 方式2:环境变量(临时生效,重启终端后失效) set DASHSCOPE_API_KEY=YOUR_DASHSCOPE_API_KEY ``` **获取 API Key:** 1. 前往 [阿里云百炼平台](https://bailian.console.aliyun.com/) 2. 注册/登录账号 3. 在 "API-KEY 管理" 页面创建新的 API Key --- ### ✅ Step 4:验证安装 ```bash # 测试1:列出所有窗口(验证 pywin32 正常) python main.py windows # 测试2:截取屏幕(验证 Pillow/截图功能正常) python main.py screenshot # 测试3:查看当前配置(验证 API Key 已设置) python main.py config --show ``` 全部命令正常输出,说明环境安装完成。 ## CLI 命令 ### 基础命令 | 命令 | 说明 | 示例 | |------|------|------| | `screenshot [窗口]` | 截取屏幕 | `python main.py screenshot` | | `capture <窗口>` | 截取指定窗口 | `python main.py capture "原神"` | | `click <x> <y> [窗口]` | 点击坐标 | `python main.py click 540 820 "原神"` | | `key <按键> [窗口]` | 按键 | `python main.py key Space "原神"` | | `hold <按键> <毫秒> [窗口]` | 按住按键 | `python main.py hold W 1000 "原神"` | | `windows` | 列出所有窗口 | `python main.py windows` | ### AI 识图命令 | 命令 | 说明 | 示例 | |------|------|------| | `click_text <描述> [窗口]` | AI识图点击 | `python main.py click_text "地图按钮" "原神"` | | `click_text <描述> --dry-run` | 仅分析不执行 | `python main.py click_text "确认" --dry-run` | | `click_text <描述> --provider <模型>` | 指定模型 | `python main.py click_text "地图" --provider gui-plus-2026-02-26` | ### 配置命令 | 命令 | 说明 | 示例 | |------|------|------| | `config --set-api-key <KEY>` | 设置 API Key | `python main.py config --set-api-key sk-xxx` | | `config --show` | 显示当前配置 | `python main.py config --show` | | `config --list-agents` | 列出可用模型 | `python main.py config --list-agents` | ### 游戏会话命令 | 命令 | 说明 | 示例 | |------|------|------| | `game list` | 列出支持的游戏 | `python main.py game list` | | `game start <游戏>` | 开始游戏会话 | `python main.py game start 原神` | | `game end` | 结束游戏会话 | `python main.py game end` | | `game current` | 显示当前游戏 | `python main.py game current` | **游戏会话命令用于 SOUL 切换:** ```bash # 开始玩原神 → AI 化身为派蒙 python main.py game start 原神 # 返回: { soulPath: "games/genshin-impact/SOUL.md", character: "派蒙" } # 不玩了 → 恢复默认 SOUL python main.py game end # 返回: { soulPath: "games/default/SOUL.md", character: "OpenClaw" } ``` **支持的游戏关键词:** - 原神:原神、genshin、派蒙、paimon - 星铁:星穹铁道、星铁、starrail、崩铁、三月七 ### 命令返回格式 所有命令返回标准 JSON 格式: ```json { "action": "click_text", "text": "地图按钮", "windowTitle": "原神", "x": 120, "y": 90, "provider": "aliyun", "model": "gui-plus", "screenshotPath": "screenshots/原神/screenshot_xxx.png", "afterScreenshotPath": "screenshots/原神/screenshot_xxx.png", "timestamp": "2026-04-05T20:00:00.000000" } ``` ## 点击模式 1. **前台点击模式**(默认) - 使用 `mouse_event` API 模拟真实鼠标 - 需要窗口在前台 - 会移动真实鼠标光标 2. **后台点击模式**(`--background`) - 使用 `PostMessage` 发送窗口消息 - 不抢夺鼠标,可在后台运行 - 部分游戏可能拦截 ## 原神特殊处理 原神游戏中所有 UI 点击操作需要同时按住 Alt 键: - 点击前自动按住 Alt 键 - 点击完成后释放 Alt 键 - 代码已自动处理,无需手动操作 ## 典型工作流 ### AI 识图点击 ```bash # 1. 通过文字描述点击按钮 python main.py click_text "地图按钮" "原神" # AI 分析截图,找到按钮位置,执行点击,返回点击前后截图 # 2. 仅分析不执行 python main.py click_text "确认按钮" "原神" --dry-run # 返回识别到的坐标,不执行点击 ``` ### 帮玩家操作界面 ```bash # 1. 截图分析当前状态 python main.py capture "原神" # AI 分析截图,发现需要点击某个按钮 # 2. 点击按钮 python main.py click 540 820 "原神" # 返回点击后的截图,AI 确认操作成功 ``` ### 扩展新模型 ```python from scripts.gui_agent import register_agent, BaseGUIAgent class NewGUIAgent(BaseGUIAgent): @property def name(self) -> str: return "new-model" def analyze(self, screenshot, instruction, **kwargs): # 实现调用新模型 API pass register_agent("new-model", NewGUIAgent) ``` ## 添加新游戏支持 1. 在 `games/` 目录下创建游戏文件夹 2. 创建 `SOUL.md` - AI 角色设定 3. 创建 `SKILL.md` - 游戏子技能说明 ### SOUL.md 模板 ```markdown # 角色名 - 游戏名助手 ## 基本信息 - **名称**: 角色名 - **身份**: 角色身份 - **性格**: 角色性格 - **口头禅**: "口头禅" ## 核心能力 - 游戏画面实时分析 - 游戏知识问答 - 自动化操作 ``` ## 注意事项 - **游戏窗口可见**:AI 需要游戏窗口在可见状态才能分析画面 - **辅助性质**:AI 只是辅助玩家解决问题,不是全自动挂机 - **策略判断**:需要真正策略判断的高难度内容仍需玩家自己操作 - **API Key 保护**:不要将 API Key 提交到 git 仓库 ## 参考资料 > 📖 详细的安装说明、模型信息、使用示例请查阅 [README.md](README.md) - [README.md](README.md) - 项目介绍、安装指南、使用截图 - [AGENTS.md](AGENTS.md) - 项目规则 - [games/genshin-impact/SOUL.md](games/genshin-impact/SOUL.md) - 派蒙角色设定 - [games/honkai-starrail/SOUL.md](games/honkai-starrail/SOUL.md) - 三月七角色设定 - [阿里云 GUI-Plus 文档](https://help.aliyun.com/zh/model-studio/gui-automation) ## 🌐 开源仓库 - **play-any-game**:[https://github.com/CGandGameEngineLearner/play-any-game.git](https://github.com/CGandGameEngineLearner/play-any-game.git) - **派蒙.skill**:[https://github.com/CGandGameEngineLearner/paimon-skill.git](https://github.com/CGandGameEngineLearner/paimon-skill.git)
Ver en GitHub