AX 爱鲜报

综合 / 人工智能 · 2026-10-12 09:49 · 1 阅读 · 0 赞

港中文开源OpenGame:一句话生成完整游戏,AI自己试玩到跑通

港中文MMLab开源OpenGame,首个端到端网页游戏生成Agent框架。给它一句prompt,自动选引擎、写代码、生成素材,并在沙盒中自试玩自修复,直到游戏真正可玩。自研GameCoder-27B以可玩性为奖励信号,Apache-2.0开源。

一句话介绍

港中文 MMLab 团队开源的 AI 游戏工厂。 给它一句 prompt,比如“做一个猫咪塔防”,它自动选引擎、搭项目骨架、写代码、生成美术素材,最关键的是——写完它会把游戏扔进沙盒里自己试玩,报错自己修,修到真的能玩才交付。背后的自研模型 GameCoder-27B,训练时的奖励信号不是“代码写得像不像样”,而是“游戏到底能不能玩”。GitHub 近 3000 Star,Apache-2.0 协议,完全开源。

开篇:让 AI 写游戏的人,大多死在这一步

你应该试过这种事:让 ChatGPT 或者 Claude 写个小游戏。

它答得飞快,代码看起来头头是道,注释规范、逻辑清晰。你兴冲冲把代码粘进浏览器——

白屏。

打开控制台,一屏红字。你把报错贴回去,它道歉、修复,你再刷新——原来能跑的部分现在崩了。如此三轮之后,你的热情和它的上下文窗口一起耗尽了。

这不是模型的编码能力不行。写个排序算法、写个增删改查,AI 稳得很。但游戏是另一种生物:游戏循环、实时渲染、跨文件的状态联动、场景挂载、资源加载——一个环节断掉,整个游戏就是死的。AI 能写出“看起来对的代码”,却很难写出“一个能跑起来的完整游戏”。

港中文 MMLab 的研究者们把这个现象研究明白了,然后做了一件事:既然“写完就交”不行,那就让 AI 写完自己先玩一遍。

这就是 OpenGame。

它是什么:给 AI 装上“游戏行业经验”的 Agent 框架

OpenGame 是第一个专为“端到端网页游戏生成”设计的开源 Agent 框架,出自香港中文大学 MMLab 实验室,论文已挂在 arXiv。

先纠正一个常见误解:它不是游戏引擎,也不只是“一个写游戏的 prompt”。它是一套完整的 Agent 系统,跑在 qwen-code 运行时上(qwen-code 又源自 Google Gemini CLI 的架构),游戏渲染用 Phaser 框架,等于站在三个成熟开源项目的肩膀上,专门解决“AI 做游戏”这一件事。

硬数据摆一下:

  • 2976 Star / 432 fork(还在快速上涨)
  • Apache-2.0 协议,商用无压力
  • TypeScript 编写,2026 年 4 月开源,至今 5 个月
  • 官方 150 个游戏 prompt 的评测中,端到端可运行率 85%,做到 SOTA

官方用它生成了六款风格完全不同的完整游戏,每一款都是一句话生成的成品:

六个官方 Demo:横版动作、答题卡牌、双人格斗、猫咪塔防、俯视射击、反应跑酷复仇者联盟横版动作(选钢铁侠/雷神/绿巨人,三关打灭霸)、霍格沃茨答题卡牌对战(答对题才能放魔法)、天上仙界双人抢答格斗、猫咪保卫金枪鱼罐头塔防、曼达洛人俯视双摇杆射击、鱿鱼游戏一二三木头人。类型、题材、画风全部不同,全部能玩,源码打包放在仓库里随便下载。

4 个部件,到底能干什么

OpenGame 的能力拆开看是四个部件,环环相扣:

Template Skill(模板技能):AI 接到需求后不瞎写,先从模板库里挑合适的引擎方案——2D 小游戏用 Phaser,重 UI 的用 canvas,3D 的上 three.js——然后按业界常规结构搭好项目骨架。这一步保证了后面的代码修改不会“牵一发动全身”,这是普通 Agent 做游戏时最容易崩的地方。

Debug Skill(调试技能):这是整个框架的灵魂。游戏写完后,Agent 把它扔进沙盒里真的运行起来,盯着控制台报错、交互失灵、场景接线断裂这些“集成级”问题,系统性定位修复,循环往复,直到游戏端到端可玩。普通 Agent 修 bug 是“改语法”,它是“把游戏跑通”。

GameCoder-27B:团队自研的 270 亿参数代码模型,专门喂过大量游戏开发轨迹(引擎 API、项目脚手架、修 bug 流程),训练分三阶段:持续预训练 → 监督微调 → 强化学习。而它 RL 阶段的奖励信号,来自游戏的真实可玩性验证——代码写得漂亮不给分,游戏玩得起来才给分。

OpenGame-Bench:配套的评测基准。150 个多样化的游戏 prompt,评测方式不是静态看代码,而是用无头浏览器把生成的游戏真启动起来,脚本模拟玩家交互,再让视觉模型打分。三个维度:构建健康度(能不能跑)、视觉可用性(界面能不能看)、意图对齐(做的是不是你想要的)。

前两个部件在框架里开箱即用,后两个是模型和评测集,论文里见真章。

最不一样的一点:跑起来才算数

市面上所有 AI 编程工具的隐含逻辑是:代码写完,任务完成。对不对,人自己跑一下看看。

OpenGame 把这个逻辑倒了过来:游戏跑起来、玩得动,任务才完成。

具体体现在两个地方。一是 Debug Skill 让 Agent 自己承担了“跑一下”这个动作——写完自己试玩,报错自己修,人只看结果。二是 GameCoder-27B 的 RL 训练直接用可玩性当奖励,等于告诉模型:你背再多代码范式都没用,把游戏做成才算数。

打个比方:别的工具是让 AI 交“代码作业”,老师批改对错;OpenGame 是让 AI 把游戏放上柜台,试玩通关了才准收钱。

这个思路其实不止适用于做游戏。任何 Agent 应用——写爬虫、做自动化脚本、搭网页——都存在“代码看着对、跑起来全崩”的问题。OpenGame 用游戏这个最难的场景证明了:让 AI 对运行结果负责,而不是对代码文本负责,才是 Agent 该有的样子。

曼达洛人俯视射击:一句话生成的完整游戏,含选关、战斗、营救流程

上手试试:三行命令,一句 prompt

需要 Node.js 20+,然后源码安装(npm 包还在准备中):

git clone https://github.com/leigest519/OpenGame.git
cd OpenGame
npm install && npm run build && npm link

装完你就多了一个 opengame 命令。建个空文件夹,一句话开工:

mkdir -p games/my-game && cd games/my-game
opengame -p "Build a Snake clone with WASD controls and a dark theme." --yolo

跑完打开生成的 index.html 就能玩。--yolo 是让 Agent 可以执行 shell 命令(默认只读写文件)。

模型接入用的是 OpenAI 兼容接口,三个环境变量搞定,官方模型 GameCoder-27B 开源后可以换上本地部署:

export OPENAI_API_KEY="your-api-key"
export OPENAI_BASE_URL="https://api.openai.com/v1"   # 可选
export OPENAI_MODEL="gpt-4o"                          # 可选

一个容易被忽略的细节:游戏里的美术素材是单独调用图像 API 生成的,和主模型分开配置,支持通义、豆包等国产 provider,可以混搭(比如图像走通义、视频走豆包、推理走 OpenAI):

export OPENGAME_IMAGE_PROVIDER=tongyi
export OPENGAME_IMAGE_API_KEY=sk-xxx

不想装环境?官方落地页挂着所有 demo 的在线试玩,仓库里每个游戏都有源码 zip,下载后 npm install && npm run dev 就能本地跑起来研究。

猫咪塔防 Hajimi:手绘卡通风,猫咪炮塔保卫金枪鱼罐头

和其他方案比

拿 OpenGame 和三条常见路线对比一下:

方案 一句话出完整游戏 自动试错修复 可玩性评测 开源程度
通用 Coding Agent(Claude Code / qwen-code) 能写,但经常跑不通 要人盯着修 无 部分
v0 / Lovable 类应用生成器 偏网页应用,游戏不是重点 人工为主 无 不完全
OpenGame 游戏端到端交付 沙盒自试玩自修复 OpenGame-Bench Apache-2.0 全开

翻译成人话:通用 Agent 是“什么都行的全才”,接到游戏需求能写,但“写完能不能玩”要靠你的人品和耐心;OpenGame 是“只会做游戏”的专才,做一部,成一部——当然,成色如何,下面这几条必须说清楚。

4 个必须说清楚的地方

1. 生成的是能玩的原型,不是成品游戏。 官方那六个 demo 都是精调 prompt 的成果,每个 prompt 写了上百词,把玩法、角色、技能、画风全部规定死了。你随手一句“做个俄罗斯方块”,质量肯定打折。而且游戏的关卡节奏、数值平衡这些“设计”环节,AI 目前还替代不了人类设计师。

2. 框架免费,但生成要花 API 的钱。 OpenGame 本身开源,但跑起来要调 LLM API,游戏美术还要另走图像 API,一次完整生成的账单别小看。想省钱可以按论文方案本地部署 GameCoder-27B,但 27B 的模型对消费级显卡不算友好。

3. 产出是 HTML5 网页游戏。 基于 Phaser,浏览器打开就玩,手机浏览器也行。想上架 Steam 或者做成原生 App?那中间还差着一个数量级的工程量。

4. 项目还在快速变化期。 目前只能源码安装,npm 包在准备中;配置目录还叫 .qwen(沿上游命名,官方说后续迁移到 .opengame);评测 pipeline 标注“即将发布”。5 个月 2976 Star 说明关注度高,但也意味着文档和生态都在早期,遇到坑要有心理准备。

常见问题

完全不会编程,能用吗? 能。安装就三行命令,之后全程一句 prompt 交互。但要微调游戏细节(改数值、换素材),还是需要看懂生成的项目结构。

支持中文 prompt 吗? 官方 demo 全是英文 prompt。中文它能理解(底层模型能力),但游戏内的文案、素材生成效果,英文 prompt 明显更稳,建议关键名词用英文写。

和用 Cursor / Claude Code 写游戏,区别到底在哪? 三个硬区别:OpenGame 有游戏专用的项目模板库;有沙盒自测自修的 Debug Skill;训练模型时直接拿可玩性当奖励。通用 Agent 这三样都没有,所以“最后一公里”全靠人。

生成的游戏能商用吗? 框架 Apache-2.0 协议允许商用,但注意两点:调用的模型 API 要遵守各家的商用条款;生成美术素材的版权归属目前行业里还是灰色的。

手机上能玩吗? 能。HTML5 网页游戏,手机浏览器直接打开,官方 demo 页在手机上也能跑。

总结

OpenGame 值得关注的理由,其实不止“一句话做游戏”这个噱头。

它真正有价值的,是给所有做 Agent 的人打了个样:让 AI 对运行结果负责,而不是对代码负责。Debug Skill 的沙盒自测、以可玩性为奖励的 RL 训练,本质上都在回答同一个问题——怎么让 AI 从“写得像”进化到“跑得通”。这个问题解决了,能玩的网页游戏只是第一个收获。

至于玩家们,不妨先去官方落地页把六个 demo 玩一遍——想想它们都是一句话生成的,再想想你脑子那个搁了几年的游戏点子。

AI 写代码的尽头,不是“写得像”,而是“跑得通”。

项目地址:https://github.com/leigest519/OpenGame 在线体验 / 论文:https://yelonhu.github.io/OpenGame-landing-page/ · https://arxiv.org/abs/2604.18394 仓库数据:2976 star · 432 fork · Apache-2.0 · TypeScript

标签 LLM AI Agent GitHub AIGC Phaser

评论

登录后才可评论

0 条评论

  • 暂无评论,来写第一条吧。