pokemon-red

🎮 AI自主操控的经典宝可梦

基于PyBoy模拟器的Pokemon Red自动化游戏指南,通过本地HTTP API实现AI自主探索、战斗与任务追踪,适合游戏AI研究与自动化测试。

收藏
19.7k
安装
4.3k
版本
3.10
CLS 安全性认证2026-04-30
点击查看完整报告 >

使用说明

核心用法

Pokemon-OpenClaw 是一个让AI Agent直接扮演《精灵宝可梦 红》玩家的自动化框架。不同于传统的脚本控制,该Skill赋予Agent完整的游戏主体性:启动PyBoy模拟器服务器后,Agent通过HTTP API获取游戏截图和内存状态(如位置、队伍、战斗状态),自主决策并发送按键指令。核心工作流遵循"观察-决策-执行"循环:每回合先调用/api/state/api/screenshot获取完整游戏状态,优先使用/api/navigate进行智能寻路(该接口会阻塞直到到达目标、遭遇战斗或卡住),必要时回退到/api/press手动控制。战斗系统支持完整的回合制操作,任务系统则通过/api/quest系列接口实现目标追踪和经验积累。

显著优点

真正的Agent自主性:不同于预设脚本,该框架让AI像人类玩家一样"看屏幕、做决定",具备更强的适应性和泛化能力。智能寻路系统/api/navigate接口封装了路径规划,大幅简化了地图探索的复杂度,Agent只需指定目的地即可。完整的状态透明:从RAM直接读取游戏状态,包括精确坐标、队伍HP/等级、持有道具、徽章进度等,为决策提供丰富信息。模块化设计:导航、战斗、任务、存档等功能解耦,支持灵活组合。持续学习能力:通过/api/knowledge接口记录游戏经验,实现跨会话的知识积累。

潜在缺点与局限性

外部依赖复杂:需要Python 3.10+、PyBoy、FastAPI等多个依赖,且必须自行获取合法的ROM文件,配置门槛较高。寻路覆盖有限:并非所有地图都有路径规划数据,部分区域需要手动探索。文本检测缺陷text_active标志存在bug(始终为true),Agent无法可靠判断对话状态,需要依赖截图视觉识别。阻塞式导航的风险/api/navigate可能长时间阻塞(60-120秒),在复杂场景下会影响响应性。战斗自动化粗糙:需要手动处理菜单导航和动画等待,缺乏高级策略(如属性克制自动选择技能)。无多实例支持:单端口设计难以并行运行多个游戏实例。

适合的目标群体

游戏AI研究者:探索LLM在复杂决策环境中的表现,研究长期规划与记忆机制。自动化测试开发者:为Game Boy模拟器或类似复古游戏平台构建测试框架。强化学习实践者:需要可观测状态空间和可编程接口的RL训练环境。创意开发者:制作Twitch Plays风格的社区互动游戏,或AI速通挑战。技术爱好者:希望理解如何将传统游戏与现代AI接口桥接的工程师。

使用风险

性能与稳定性:PyBoy模拟器在长时间运行后可能出现内存泄漏,建议定期重启。依赖版本冲突:PyBoy与特定Python版本绑定较紧,升级环境可能导致兼容性问题。ROM法律风险:用户必须自行确保ROM来源合法,框架不提供且明确禁止盗版ROM。外部代码安全:从GitHub克隆的emulator_server.py等代码未经审计,存在潜在供应链风险。存档损坏:频繁快速存档/读档可能导致状态不一致,建议配合游戏内正常存档使用。网络隔离:虽然API仅限本地,但模拟器本身可能尝试网络连接(如某些修改版ROM),建议在隔离网络环境运行。

安全解读

核心用法

本技能让AI成为《宝可梦红》的实际玩家——启动PyBoy模拟器HTTP服务后,AI通过截图观察画面、读取游戏内存状态、发送按键指令完成游玩。操作流程高度结构化:

1. 启动服务:克隆Pokemon-OpenClaw仓库,运行emulator_server.py建立localhost:3456服务端
2. 观察决策:每回合先调用/api/screenshot截图分析画面,再调用/api/state获取完整游戏状态(位置、队伍HP、战斗状态等)

3. 智能移动优先使用`/api/navigate`自动寻路到指定城镇/地点,该API阻塞直至到达、遇敌或卡死,无需轮询

4. 战斗处理:遇敌时根据状态选择战斗/逃跑,通过/api/press发送按键序列

5. 任务追踪:利用Quest系统记录当前目标,避免无目的 wandering

显著优点

  • 原生AI控制:不同于预编程脚本,AI真正"看到"屏幕并自主决策,适合强化学习、LLM agent研究
  • 高阶抽象navigate API将底层按键封装为语义化目的地(如"Viridian City"),大幅提升开发效率
  • 完整状态暴露:直接读取GB内存,获取精确坐标、HP数值、徽章进度等,无需图像识别猜测
  • 模块化设计:支持子agent会话、自动存档、知识库记录,便于长期任务分阶段执行

潜在缺点与局限性

| 问题 | 说明 |
|------|------|
| **外部依赖风险** | 必须运行未认证的GitHub仓库代码,存在供应链攻击面 |
| **非标准端口** | 3456端口需确保未被占用,且无TLS加密 |
| **无依赖锁定** | 缺少requirements.txt,PyBoy等包版本可能不兼容 |
| **法律灰色地带** | 需用户"合法获取"ROM,实际来源通常存疑 |
| **仅限单机** | 无法联机对战,仅支持本地单人游戏 |

适合人群

  • AI研究者:测试LLM/agent的决策规划、记忆、工具使用能力
  • 强化学习开发者:在经典RPG环境中训练策略模型
  • 内容创作者:AI自动通关直播、"AI玩宝可梦"娱乐内容
  • 怀旧玩家:想体验AI代打的独特视角

常规风险

  • 供应链风险:外部仓库代码可能含恶意行为,使用前应人工审查
  • 端口冲突/劫持:若3456被其他服务占用,可能连接至非预期端点
  • 依赖毒性:pip安装的包可能被投毒,建议在隔离虚拟环境或Docker中运行
  • 版权风险:ROM文件分发涉及任天堂版权,需自行承担法律责任

pokemon-red 内容

references文件夹
手动下载zip · 6.8 kB
game_instructions.mdtext/markdown
请选择文件