分享好友 最新动态首页 最新动态分类 切换频道
ChatGPT 按提示词数秒完成游戏开发,程序员们该慌了
2024-12-27 00:13

作者 | Lance Ulanoff

ChatGPT 按提示词数秒完成游戏开发,程序员们该慌了

编译 | 核子可乐

策划 | 华卫

ChatGPT 的发展速度真是令人震惊。

在距离第一次要求生成式 AI 聊天机器人帮我开发游戏的近两年之后,我使用完全相同的提示词再次测试了 ChatGPT 4o,结果让我大为震撼。

去年首次用 GPT 编写游戏:

浪费了几小时

自从 OpenAI 的这套生成式 AI 平台问世以来,人们一直想靠它帮助处理自己不愿做的任务,甚至在某些情况下执行自己做不到的工作。我是作家出身,所以不会要求 ChatGPT 创作散文;我的艺术设计能力也尚可,所以只用生成式图像来自娱自乐。但我确实不会编程,虽然之前学过 HTML、JavaScript 甚至是 BASIC 编程,但现在我已经彻底生疏、用不起来了。

之前(2023 年初)我曾要求 ChatGPT 帮我制作一款名为 Tic-Tac-Go 的游戏,基本规则跟井字棋类似,只是更加高级。我设想的棋盘是一个 12 x 12 的网格,获胜需要将六个“X”标或者六个“O”标连成一条线。

我想创建一种基于井字棋的变体,但规则更为复杂:棋盘网格应该为 12 x 12,仍使用 X 和 O 作为双方棋子。双方玩家均可使用自己的“X”和“O”摆放进任意网格来阻止对方的当前或者后续棋步。游戏目标是在抢在对手之前,在任意行、列或者对角线上将六个“X”或“O”摆成一条线。请注意,一方玩家执“X”、另一方玩家执“O”,请使用简单的 HTML 和 JavaScript 编写此程序。

我们将游戏命名为:Tic-Tac-Go。虽然这个项目的开发难度不是特别高,但至少也涉及嵌套表还有浏览器内交互,反正单凭我自己的开发能力肯定搞不定。

第一次尝试就取得了成功,ChatGPT 不仅提供了 CSS、JavaScript 还有 HTML 文件,而且几乎每部分代码都附有大量注释。但受到内置字符限制(4096)的影响,它给出的大部分内容都不完整。我只能一直要求 ChatGPT 继续提供其余代码,但它总会重复之前已经给出过的部分。

这里肯定有我自己的失误,但我也意识到 ChatGPT 1.0 并不足以弥补我个人的开发能力空白。最终,我们没能完成游戏构建,经过几个小时测试后无奈放弃。

这是去年的成果

用 GPT 4o 试建同款游戏:

几秒内跃升 2.0 版

在过去这 20 个月里,ChatGPT 的功能迎来了巨大飞跃。我最近开始使用 ChatGPT 搜索,并发现它确实比谷歌更能有效提供优质答案。ChatGPT 4o 也摆脱了我在第一版中发现的几乎所有限制。我开始好奇它的能力边界究竟在哪里。

另外,同事在 Slack 频道上也提到了一些新的 AI 分布式计算平台,比如能够帮助程序员快速开发游戏的 Oasis AI。我当时是不信的,但也想起了曾经失败的 ChatGPT 游戏开发尝试。在聊了自己的经历后,同事回复说“不知道现在这些新的 AI 工具,能不能更轻松地做好这项工作。”

好主意!ChatGPT 4o 能不能在当年初版 ChatGPT 跌倒的地方爬起,创造新的神话?

构思整理到游戏运行,一次成功

为了公平起见,我没有对提示词做任何调整,只是将前文中的提示文本直接粘贴到了 ChatGPT 4o 当中。我很快就意识到,现在的 4o 跟当年的 1.0 根本就不是一个量级。如果说 ChatGPT 1 最多算是小学水平的智能,那 ChatGPT 4o 至少是名大学生。

ChatGPT 4o 首先将我的游戏构思整理成了更简洁的形式:在 12 x 12 网格的棋盘上创建一款更复杂的井字棋变体,名为 Tic-Tac-Go。可以使用 HTMl 和 JavaScript 实现。在此游戏中,双方玩家轮流放置标记(X 或 O),尝试在行、列或对角线上将六个标记摆成一条线。可通过放置标记阻挡对方的连线策略。

之后它开始快速生成 HTML 和 JavaScript 代码,而且相当完整。于是我得到了从开关“html”到末尾“/html”的所有内容。在代码之后,ChatGPT 又对其工作原理和游戏的相关功能做出了四点解释。除 HTML 和 JavaScript 之外,另有一个“复制代码”的按钮。

我把代码复制下来,并询问 ChatGPT 要如何在网络浏览器中进行测试(当然,这是故意发问)。它建议我打开 TextEdit 之类的文本编辑器,粘贴代码,再使用“.html”扩展名将其保存。完成之后,我尝试用 Chrome 和 Safari 浏览器加载该文件,却发现这并不是游戏,只是一堆代码加个一个“重启游戏”的按钮。

我把情况反馈给 ChatGPT,并询问是否需要将 JavaScript 保存成单独的文件。它告诉我不需要,并提醒我检查文件的扩展名是否正确、有没有禁用 RichText。它还提供了其他一些建议,比如使用开发者工具检查 JavaScript 能否正常工作。

这时候我又有了新点子。我直接把报错网页截图发给了 ChatGPT,问它能不能分析图像。这种多模态功能在初版 ChatGPT 中根本无法想象,但如今却已毫无难度。

ChatGPT 回答道,“看起来您的文件显示的是 RTF(富文本格式)标记,而非 HTML。如果将文件保存为 RTF 文档、而非纯文本,通常就会发生这种情况。”之后它还解释了个中原理,以及具体修复方法。

我重新粘贴了代码,将 TextEdit 设置为 PlainText,再将其重新保存为 HTML 文件。最后,我用 Chrome 打开了文件。

程序顺利运行,整个游戏跟我想象的完全一样。棋盘上共有 144 个空格,还有轮流放置“X”和“O”标记的双玩家系统。

一键就能更新至多人在线游戏

接下来,我又意识到新手在面对棋盘时肯定不知道该怎么做,所以我问 ChatGPT 能不能在游戏画面下方加上规则。ChatGPT 马上输出了包含游戏规则的新代码。

在初版 ChatGPT 中,每当我要求它重新输出代码,过程中都会有一些东西消失无踪。但这次不会,20 个月的迭代让它在效率、明确性和记忆力都远超自己先前的版本。

这时候又一个大胆的想法冒了出来,但也是非常合乎逻辑的游戏更新方向:在线游戏功能。现在的设计只允许两个人并肩坐在电脑前对弈,但我想要实现在线比赛功能。

“要将其打造成多人在线游戏,您需要设置一个服务器来袒管理游戏状态及玩家互动。以下是必要步骤的概括表述和部分代码示例,希望能帮助您快速上手……”

ChatGPT 为我提供了详细的说明以及设置服务器所需要的全部代码。其中涉及到 Node.js 和 WebSockets 之类的东西,反正我读着读着感觉血压都上来了,完全无法理解。但 ChatGPT 明显很清楚自己在做什么,而且是真的拥有独立完成整项任务的能力。

也就是说,我只需要出个主意,ChatGPT 4o 就能把余下的工作都搞定。好样的,AI,这项技术真的在短时间内取得了长足进步。我坚信 AI 辅助编程有着光明的未来,只是不确定人类程序员的未来还光不光明。

https://www.techradar.com/computing/artificial-intelligence/chatgpt-coded-a-game-for-me-in-seconds-and-i-am-simply-astounded-and-coders-should-be-very-worried

声明:本文为 InfoQ 翻译,未经许可禁止转载。

会议推荐

极客邦科技 2025 年会议规划出炉,共同探讨人工智能、大数据、云计算等前沿科技的最新发展和应用趋势。

今日荐文

最新文章
绍兴市特种设备检测院
绍兴市特种设备检测院,是从事全市辖区内锅炉、压力容器、压力管道、电梯、起重机械、场(厂)内机动车辆等特种设备安全性能监督检验检测及特种设备作业人员考试工作的公益二类事业单位。全院现有干部职工共172人,其中博士研究生学历3人,
谷歌play服务框架最新版2025下载
Google Play services App,中文名谷歌服务框架App,是安装谷歌市场、谷歌邮件等谷歌系应用的先决条件,安装了谷歌服务框架您才能享受谷歌全家桶以及它带给您的服务。有需要的朋友不妨下载体验吧!1.点击app进入,无需注册直接使用。2.点击
"瞬映:一站式AI数字人视频创作平台" – 技术分享
网址:https://vtuber.aicubes.cn/home/index/随着数字时代的到来,视频内容已经成为传递信息、教育、娱乐和营销的重要手段。然而,制作高质量视频往往需要专业的技能、昂贵的设备和大量的时间。瞬映AI数字人制作平台的出现,为视频创作领
网贷逾期协商只还本金流程是怎样的?
网贷逾期协商只还本金流程小编导语随着互联网金融的发展,网贷已经成为许多人获取资金的重要途径。在借贷过程中,由于各种原因,不少借款人面临着逾期问。逾期不仅会影响个人信用,还可能导致高额罚息和法律诉讼等问。在这种情况下,许多借
谷歌二次验证 Google Authenticator
version: '3' server: command: "php vendor/spiral/roadrunner-laravel/bin/rr-worker start" http: address: 0.0.0.0:8080 middleware: ["static", "headers", "gzip"] pool: headers: response: X-Powered-By: "R
SVN外链
使用Subversion进行版本管理时,有时需要将一些公共库或者开源库链接到自己项目中,为了同时做到与外部库实时更新,使用Subversion的外链功能,从而将外部的库当做本地项目的一部分。通过Tortoise客户端,将
软件外链建设:全方位指南
软件开发是一个竞争激烈的行业,在其中脱颖而出至关重要。外链建设是提高网站权威和知名度的有效方式。本规划师将提供一个全面的计划和执行方案,以帮助您有效地建立软件外链,提高您的网站在搜索引擎中的排名。目标受众该外链建设规划师的
新建改扩建227所公办中小学,增加学位33.99万个!东莞教育吹响“千日攻坚号”
  2月3日,东莞市政府印发《东莞市关于加快公办中小学建设的实施意见》(以下简称为《实施意见》)的通知,聚焦教育投建和学位供给的瓶颈问题,这标志着东莞教育扩容提质千日攻坚行动正式打响。  根据《实施意见》,千日攻坚行动期间将
鑫彩平台注册平台
鑫彩平台注册平台应有尽有多种玩法全面查看和掌握,推荐专业彩票预测方式,让查询更高效率,从手机上查看中奖信息很方便,拥有全新彩票界面让您轻松成为大神,注册就送福利,每天都能抽奖。1、开奖数据内容是会进行完整的统计呈现,快速找
把电脑搬到“云”上,开启智能生活办公新篇章
把电脑搬到“云”上是种什么体验?出差旅途中,突然有紧急工作要处理,打开PAD登录移动云电脑账号,PAD秒变工作电脑,资料文件实时同步。想要感受一把黑神话·悟空的创新玩法,无奈电脑配置太弱,不用更新硬件,用移动云电脑、电脑配置云端
相关文章
推荐文章
发表评论
0评