宝可梦红自动游玩

14分钟前更新 2 00
宝可梦红自动游玩宝可梦红自动游玩
宝可梦红自动游玩

技能简介

该技能让AI直接扮演宝可梦红玩家,通过PyBoy模拟器启动游戏服务器,读取屏幕截图和RAM游戏状态,经HTTP API发送按键指令完成探索、战斗、练级等操作。

业务背景

游戏测试与AI研究需要大量重复性操作验证,人工游玩效率低且难以复现。本技能通过模拟器让AI自主操控宝可梦红,实时获取画面与内存状态完成探索、战斗等任务,适用于自动化测试脚本开发、强化学习训练数据采集及复古游戏行为研究等场景。

落地案例:研究团队需采集宝可梦战斗决策数据用于模型训练。启动技能后,AI自动从真新镇出发,调用/api/quest设定目标为华蓝市,沿途读取屏幕截图和队伍状态,遇敌时发送按键指令战斗。当HP低于30%时,AI导航至宝可梦中心恢复,全程HTTP API可控,定期执行save命令保留进度,实现无人值守的自动化数据采集。

能做什么

  • 自动启动宝可梦红模拟器并建立HTTP服务
  • 实时获取游戏画面截图与内存状态(位置、队伍、徽章、战斗状态)
  • 智能路径导航至指定城镇或地点
  • 执行手动按键操作(方向键、A/B/Start/Select)
  • 处理野生宝可梦对战与逃跑
  • 追踪任务进度并保存学习记录
  • 随时存档读档管理游戏进度

使用说明

安装依赖

git clone https://github.com/drbarq/Pokemon-OpenClaw.git
cd Pokemon-OpenClaw
pip install pyboy pillow numpy fastapi uvicorn requests
# 将合法获取的PokemonRed.gb ROM文件放置于./PokemonRed.gb

配置环境变量

设置POKEMON_DIR为克隆目录路径(默认:~/Code/pokemon-openclaw)。

启动模拟器服务

cd $POKEMON_DIR && python scripts/emulator_server.py --save ready --port 3456

单回合操作流程

  1. 获取状态:curl -s http://localhost:3456/api/state 读取游戏状态;curl -s http://localhost:3456/api/screenshot -o /tmp/pokemon_current.png 获取截图并用图像工具查看
  2. 移动决策:优先使用/api/navigate进行路径导航(阻塞式,超时设60-120秒),返回状态包括arrived/battle/stuck/error;仅当导航失败或建筑内交互时改用/api/press发送1-5个按键
  3. 战斗处理:状态显示in_battle为true时,按A打开菜单选择招式或逃跑,重复直到战斗结束
  4. 任务管理:/api/quest查看当前目标,完成后调用/api/quest/complete推进并记录经验
  5. 定期存档:调用/api/command发送save命令创建检查点

输入与输出

见下方输入与输出表格。

项目内容
输入目标地点名称、按键序列(方向键/A/B/Start/Select)、任务完成标记、自定义存档名称
输出游戏状态JSON(含位置坐标、队伍信息、徽章数量、战斗标志位)、PNG格式屏幕截图、导航执行结果状态码、可用目的地清单、历史学习记录
适用人群构建游戏AI代理的开发者、复古游戏自动化研究者、多代理竞技系统设计者、强化学习实验人员
不包含正版ROM文件(需用户自备)、可视化GUI操作、其他GB游戏支持、云端托管服务

 

风险提示

  • text_active检测标志存在故障(始终为true),不要依赖该字段判断对话状态
  • 导航API为阻塞调用,需设置足够长的HTTP超时时间避免误判为失败
  • 需要自行准备合法来源的宝可梦红ROM文件,版权风险由使用者承担
  • 低血量时(HP<30%)应及时导航至宝可梦中心恢复,避免战斗失败
  • 频繁存档可防止意外崩溃导致进度丢失

来源信息

原始链接:https://github.com/openclaw/skills/tree/main/skills/drbarq/pokemon-red/SKILL.md
来源类型:GitHub仓库

数据统计

相关导航

暂无评论

none
暂无评论...