跳至正文
Joey's Blog

660 字 3 分钟

ChatGPT Game Autoplay

项目概述

ChatGPT 在生成图片时会显示一个贪吃蛇小游戏。ChatGPT Game Autoplay 能识别游戏棋盘、规划蛇的移动,并在页面上显示实时状态面板,让用户查看当前局面和下一步路线。

所有识别和操作都在用户浏览器中本地进行,扩展不会将页面内容发送到其他服务。自动游玩可以随时暂停,游戏原有的键盘操作仍然可用。

扩展在 ChatGPT 图片生成页面运行时的游戏和实时面板

面板会并排展示微缩棋盘和当前决策依据,蓝色虚线标出规划路线,方便观察自动游玩的状态。

棋盘识别与状态面板

工具优先读取页面中的游戏状态;页面结构无法提供状态时,会回退到像素识别。页面面板展示棋盘尺寸、蛇身长度、蛇头与食物位置、当前方向、决策原因和规划路线。

游戏尚未开始时,扩展会保持被动,不会把页面背景动画误认为正在进行的游戏。游戏运行期间,扩展会等待游戏消费上一次方向输入,再发送下一步,使自动操作跟随实际游戏节奏。

三种游玩策略

  • Safe BFS:寻找食物的较短路径,并检查蛇身后续是否仍有可行空间。
  • Flood fill:优先选择可到达空间较大的移动方向。
  • Hamiltonian cycle:沿棋盘循环路线行进,在满足条件时再靠近食物。

三种策略都考虑棋盘边界环绕以及蛇可进入刚离开的尾部格子的规则,用户可从工具栏弹窗切换策略。

多浏览器支持

项目提供 Chromium 浏览器扩展、Firefox 插件和 Tampermonkey 用户脚本三种构建形式。界面支持英语、中文、法语、俄语和西班牙语,并提供独立的自动游玩开关与面板显示选项。

Chromium 版本可以通过浏览器扩展页加载未打包目录;Firefox 版本支持临时加载;用户脚本可从 GitHub Releases 安装。扩展在游戏结束后会等待下一局,并可随时从弹窗暂停自动操作。

项目特点

这个项目将棋盘状态感知、路径规划和浏览器扩展交互组合在一起。用户既可以让蛇自动运行,也可以通过面板观察算法如何根据食物位置、蛇身和可行空间选择方向。