欢迎使用 AI 进行游戏开发! 在本系列中,我们将使用 AI 工具在 5 天内创建一个功能完备的农场游戏。到本系列结束时,您将了解到如何将多种 AI 工具整合到游戏开发流程中。本文将向您展示如何将 AI 工具用于:

  1. 美术风格

  2. 游戏设计

  3. 3D 素材

  4. 2D 素材

  5. 剧情

注意: 此篇文章多次引用 第 2 部分 相关内容。简单来说,第 2 部分使用了 ChatGPT 进行游戏设计; 更具体地,介绍了 ChatGPT 的工作原理、语言模型及其局限性。如果您还没有阅读过,可以跳转信息。

第 5 天: 剧情

在本教程系列的 第 4 部分 中,我们介绍了如何将 Stable Diffusion 和 Image2Image 工具嵌入到传统 2D 素材制作流程中,来帮助从业者使用 AI 制作 2D 游戏素材。

本文是该系列的最后一部分,我们将使用 AI 设计游戏剧情。首先,我会介绍使用语言模型为农场游戏生成剧情的设计流程,请注意带有 ⚠️ 局限性 标识的段落。其次,我会具体阐述涉及到的相关技术,以及它们在游戏开发方面的发展方向。最后,我会对本系列做一个总结。

剧情设计流程

必要条件: ChatGPT。ChatGPT 会贯穿整个剧情设计流程。可以跳转 第 2 部分 相关信息。实际上 ChatGPT 并不是唯一的可行方案,有许多竞争对手正在涌现,包括一些开源的对话代理 (dialog agent)。我会在后面的部分详细介绍对话代理新兴领域。

  • ChatGPT:
    https://openai.com/blog/chatgpt/

  1. 让 ChatGPT 写剧情概要。 我给 ChatGPT 提供了大量农场游戏相关信息,让它写一个剧情概要。

ChatGPT for Story #1

我: 我正在为一个农场游戏设计剧情。类似星露谷物语或动物之森,这是一款操作简单的闲置类模拟经营游戏,玩家可以体验到种植和收获多种农作物的乐趣。游戏内的需要文字描述的地方有两个: 一个是游戏介绍,篇幅在一到两段; 另一个是农作物简介,可以是一两句话。

农作物有: 小麦、玉米、马铃薯、番茄、草莓、南瓜、辣椒、蓝莓、大黄。

游戏的世界活力而又多彩,构图简约而又温暖。背景中有令人愉悦的鸟鸣声和动物啼叫。它是一款可以在副屏上玩的休闲游戏,剧情应该既简单又有趣。

请为这款游戏写一个剧情概要。要求: 需要有一两个 NPC,需要激励玩家经营和扩大农场。

ChatGPT: 在农场游戏中,您将扮演一名年轻农夫,继承了祖父留下的一小块土地。您的邻居名叫 Sam,他具有丰富的农场经验,会在您经营农场时提供帮助。当您种植和收获小麦、玉米、西红柿和草莓等农作物时,您会获得金币奖励,可用于购买新农作物种子和扩大农场。在农场游戏中,您可以体验活力多彩的世界,倾听和美的自然之声,放松劳累的身心。伴随着 Sam 的鼓励和收获农作物的喜悦,您将有动力继续种植收获新农作物和扩大农场。

ChatGPT 回答的剧情概要与 星露谷物语 极其相似。

  • 星露谷物语:
    https://www.stardewvalley.net/

⚠️ 局限性: 由于训练语料库的原因,语言模型倾向于生成现有的剧情。

这说明了不能完全依赖语言模型代替人工,而应该把语言模型作为激发创意的工具。例如上文中 ChatGPT 生成了与星露谷物语相似的剧情,完全不具备原创性。

  1. 优化概要。 与 第 4 部分 中的 Image2Image 相同,这类工具在工作流程中需要反复迭代多次才能发挥潜力。接下里,我继续询求 ChatGPT 更具原创性的结果。

ChatGPT for Story #2

我: 这剧情和星露谷物语太相似了,请写一个更具原创性的版本。

ChatGPT: 在农场游戏中,您将扮演一名年轻旅者,旅途中偶然发现了一片肥沃且充满魔法的土地。这片土地由农业女神统治,她赐予你耕种的天赋。当您种植和收获马铃薯、辣椒、蓝莓和南瓜等农作物时,您不仅会获得金币奖励,还会获得女神的祝福。女神的祝福会提高农作物产量、解锁新农作物种子和新农具、帮助农场建设。

在旅程中,您会遇到其他的旅者,他们同样受女神赐予并在这片土地耕种安家。他们会提供耕种帮助,让您的农场体验更加愉快。

农场是一个活力多彩的世界、伴随着和美的自然之声。女神的祝福不仅能赋予农场力量,还能吸引各种生灵。生灵的到来可能会是挑战,也可能成为新的冒险。

您的目标是经营最繁荣的农场,赢得女神的青睐,以及解开这个魔法之地的所有秘密。

这次的回答好多了。我继续优化结果,例如要求移除农场游戏中不必要的魔法元素。经过几次迭代,我得到了一份满意的剧情概要。接下来就是生成游戏剧情的具体细节了。

  1. 让 ChatGPT 写剧情细节。 剧情概要基本确定之后,我继续询求 ChatGPT 补充游戏剧情细节信息。就该系列的农场游戏而言,唯一需要补充的是游戏介绍和农作物简介。

ChatGPT for Story #3

我: 听起来不错。我现在的计划是先写游戏介绍,再写商店中的农作物简介。

你能从写游戏介绍开始吗?

ChatGPT: “欢迎来到农场世界!在这款闲置类模拟经营游戏中,您将扮演一名年轻的冒险家,在一片肥沃土地上定居。在经验丰富农夫的帮助下,您将在富饶的土地上经营自己的繁荣农场。

您可以种植和收获小麦、玉米、西红柿和草莓等农作物,利用收益扩大农场; 您也可以尝试新的农作物,例如南瓜、辣椒和蓝莓; 您还可以与其他农夫交朋友,分享耕种技巧和建议; 您更可以发现新的冒险和挑战,建造所有人都羡慕的农场。

还在等什么?现在就放松劳累的身心,沉浸式地体验活力多彩的世界、倾听和美的自然之声、探索激动人心的冒险,播种、种植、收获、扩张、建造农业帝国吧!”

得到的回答还不错。不过我在第 1~4 部分中开发的游戏内容里,并没有经验丰富的农夫提供帮助这一特性,也没有新的冒险和挑战系统。

  1. 优化细节。 同样地,我继续迭代优化剧情细节。

ChatGPT for Story #4

我: 听起来很不错,但游戏内没有冒险和挑战系统。你能去掉相关描述吗?

对于扩建农场和农作物解锁升级系统,你仍然可以保留,请自由发挥。

ChatGPT: “欢迎来到农场世界!在这款闲置类模拟经营游戏中,您将扮演一名年轻的冒险家,在一片肥沃土地上定居。您将在富饶的土地上经营自己的繁荣农场。

您可以种植和收获小麦、玉米、西红柿和草莓等农作物,利用收益扩大农场; 您也可以尝试新的农作物,例如南瓜、辣椒和蓝莓; 您还可以升级解锁土地品种,种植更高级的农作物。

还在等什么?现在就放松劳累的身心,沉浸式地体验活力多彩的世界、倾听和美的自然之声、播种、种植、收获、扩张、建造农业帝国吧!”

我对这个回答很满意。那么新的问题来了,我可以直接把这段内容应用到我的游戏中吗?对于此系列的农场游戏而言,或许可以,因为这是一款为 AI 教程开发的免费游戏。但是对于商业产品而言,最好不要,它很可能会导致潜在的法律、道德和商业后果。

⚠️ 局限性: 直接将语言模型的生成内容拿来自行使用,很可能会导致潜在的法律、道德和商业后果。

潜在的后果如下:

  • 法律: 目前围绕生成式 AI 的法律环境非常不明朗,有几起存在争议的诉讼正在进行中。

  • 道德: 语言模型生成的内容可能包含抄袭和偏见。详情请见 道德与社会新闻稿。参考信息:
    https://hf.co/blog/ethics-soc-2

  • 商业: 一些消息 来源显示,AI 生成的内容可能会被搜索引擎降低优先级。SEO (Search Engine Optimization,搜索引擎优化,是一项优化搜索引擎排名的技术) 指出,不同于垃圾邮件需要被搜索引擎排除,AI 生成的内容对搜索引擎具有一定的价值,但并不需要太高的优先级。同时,一些 AI 内容检测 工具可以检查搜索到的内容是否为 AI 生成的,例如正在研究的语言模型 watermarking 可以给 AI 生成内容增加 隐式水印,以使更容易地被 AI 内容检测工具捕捉。参考资料:
    https://www.searchenginejournal.com/google-says-ai-generated-content-is-against-guidelines/444916/

  • Google SEO 关于 AIGC 的文章:
    https://seo.ai/blog/google-is-not-against-ai-content

  • AI 内容检测工具:
    https://writer.com/ai-content-detector/

  • Watermarking 模型:
    https://arxiv.org/abs/2301.10226

考虑到这些局限性,最安全的方法可能是: 仅使用 ChatGPT 等语言模型进行头脑风暴,获取灵感后手动完成最终内容。

  1. 细化描述。 我继续询求 ChatGPT 对农作物商品的细致描述。

ChatGPT for Story #5

我: 现在我想为游戏内的每一种农作物写简介。简介会在游戏商店中展示,应该与剧情紧密结合,且仅为一句简短的描述。

首先,写一句小麦的简介。

ChatGPT: “所有农场的主要作物,种植小麦可以获得稳定可靠的收益。”

由于此系列的农场游戏剧情简短,使用 ChatGPT 生成全部剧情内容非常有效。但是当生成的剧情越来越长,局限性就会越加明显: ChatGPT 不太适合生成长篇连贯剧情。即使仅仅是询求 ChatGPT 为农作物生成简短的描述句子,几次询求之后生成的内容质量也开始下降并且陷入重复。

⚠️ 局限性: 语言模型生成的内容重复性高。

最后,我总结了使用 AI 设计游戏剧情的整体流程,以下是我个人经验的一些技巧:

  • 询求剧情概要。 语言模型生成的长篇内容质量可能较低,生成高抽象度的剧情概要往往效果更好。

  • 头脑风暴。 语言模型生成的内容不连贯,用在某个点上激发创意比较好。例如先设计一个角色基本框架,再使用 AI 来头脑风暴角色的具体细节。

  • 优化内容。 写下设计的剧情内容,并询求语言模型如何改进。即使生成内容不被采用,它也可能激发您改进相关的创意。尽管语言模型有以上种种局限性,但对游戏开发而言,对话代理仍然是一个非常有用的工具。而这仅仅是个开始,接下来我会探讨对话代理的新兴领域及其对游戏开发的潜在影响。

发展方向

新兴领域

我在 剧情设计流程 部分介绍了如何使用 ChatGPT 辅助设计,也提到 ChatGPT 并不是唯一的可行方案。

  • Character.AI:
    https://beta.character.ai/

  • 创意写作对话代理:
    https://beta.character.ai/chat?char=9ZSDyg3OuPbFgDqGwy3RpsXqJblE4S1fKA_oU3yvfTM

除此之外,还有许多尚未公开的对话代理模型。可以点击参考文章查看这些模型的异同以及更多对话代理相关信息,其中涉及到的模型主要包括:

  • 参考文章:
    https://hf.co/blog/dialog-agents

  • LaMDA
    https://arxiv.org/abs/2201.08239

  • Bard
    https://blog.google/technology/ai/bard-google-ai-search-updates/

  • BlenderBot
    https://arxiv.org/abs/2208.03188

  • Sparrow
    https://arxiv.org/abs/2209.14375

  • Assistant
    https://arxiv.org/abs/2204.05862

上面提到的 ChatGPT 的竞争对手都是闭源的。此外也有一些对话代理的开源工作,例如 LAION 的 OpenAssistant,CarperAI 的开源报告,以及 谷歌的 FLAN-T5 XXL 的开源版本,这些与 LangChain 等开源工具结合使用,可以将语言模型的输入和输出连接起来,有助于开放式对话代理的开发工作。

  • OpenAssistant:
    https://github.com/LAION-AI/Open-Assistant

  • CarperAI:
    https://carper.ai

  • 谷歌的 FLAN-T5 XXL:
    https://hf.co/google/flan-t5-xxl

  • LangChain:
    https://github.com/hwchase17/langchain

前段时间,Stable Diffusion 开源版本的出现激发了很多领域爆发式革新,农场游戏系列教程的灵感也来源于此。语言模型也相同,要在游戏开发中加入语言类的 AI 应用,开源社区将成为未来的关键一环。如果您想跟上最新进展,可以在 Twitter 上关注我,随时与我联系,我们一起探讨语言模型的发展潜力。

  • Twitter:
    https://twitter.com/dylan_ebert_

游戏内开发方向

NPC: 除了在游戏开发流程中使用语言模型和对话代理帮助设计游戏剧情等之外,在游戏内还有一个令人兴奋的开发潜力尚未实现,最明显的例子是 AI 驱动的 NPC。实际上已经出现了一些基于此想法的初创公司。就我个人而言,我目前还不清楚如何使用语言模型开发一个智能 NPC。但我认为 AI-NPC 就在不远的未来,请持续关注我的最新进展。

控制系统: 想象一下,如果不需要键盘、手柄等控制器,而用对话的方式来控制游戏会怎么样?尽管现在还没有游戏实现这种功能,但它并不是一件困难的事。如果您对此有兴趣,也请持续关注我。

结语

至此,5 天创建一个农场游戏系列就结束了。那么,想看最终游戏的样子,或者想亲自试玩一下吗?来 Hugging Face Space 应用 或 itch.io 吧!

  • Hugging Face Space 应用:
    https://hf.co/spaces/dylanebert/FarmingGame

  • itch.io:
    https://individualkex.itch.io/farming-game

Final Farming Game

感谢您阅读 基于 AI 进行游戏开发 系列文章!本系列仅仅是 Hugging Face AI 开发游戏的开始,未来还会有更多内容!如果您有任何问题,或者想了解更多相关内容,现在来加入 Hugging Face 官方 Discord 频道 与我们交流吧!

  • Discord 频道:
    https://hf.co/join/discord


英文原文: https://hf.co/blog/ml-for-games-5

作者:Dylan Ebert

译者:SuSung-boy

审校、排版: zhongdongy (阿东)

ChatGPT 设计游戏剧情 | 基于 AI 5 天创建一个农场游戏,完结篇!相关推荐

  1. 使用 ChatGPT 启发游戏创意|基于 AI 5 天创建一个农场游戏,第 2 天

    欢迎使用 AI 进行游戏开发! 在本系列中,我们将使用各种 AI 工具,在 5 天内创建一个功能完备的农场游戏.到本系列结束时,你将了解到如何将多种 AI 工具整合到游戏开发流程中.本系列文章将向你展 ...

  2. 基于linux的游戏论文,基于linux系统的图形单机版农场游戏——毕业论文.doc

    基于linux系统的图形单机版农场游戏--毕业论文 基于linux系统的图形单机版农场游戏 摘要 随着社会的发展,人们的生活越来越丰富多彩,特别是网络的飞速发展,让人们可以在工作之余享受更多的乐趣和缓 ...

  3. 第 1 天|基于 AI 进行游戏开发:5 天创建一个农场游戏!

    欢迎使用 AI 进行游戏开发! 在本系列中,我们将使用各种 AI 工具,在 5 天内创建一个功能完备的农场游戏.到本系列结束时,你将了解到如何将多种 AI 工具整合到游戏开发流程中.本系列文章将向你展 ...

  4. 基于JAVA集合写的一个梭哈游戏

    基于JAVA集合写的一个梭哈游戏. 游戏思路: 1,首先使用一个List数组保存一副无序的扑克牌(使用集合工具类) 2,使用一个Map集合和TreeSet集合保存玩家手上的手牌 3,使用一个Map集合 ...

  5. 用Unity和Playmaker创建一个限时游戏 Creating a Time Limit game with Unity and Playmaker

    本课程结束时,您将拥有在Unity中使用Playmaker创建游戏的工具 你会学到: playmaker状态的基础以及它们如何与动作一起工作. 安装悬停车,可以在竞技场内行驶. 不同力度的射击地雷驱动 ...

  6. 「Unity2D」使用Unity创建一个2D游戏系列-1

    「Unity2D」使用Unity创建一个2D游戏系列-1 安装unity并且创建你的第一个场景 在第一章,你将会学习到一些非常基本的内容:首先是unity的下载和安装,其次是准备创建我们游戏内的第一个 ...

  7. 基于FPGA的SD卡音乐播放器之完结篇

    基于FPGA的SD卡音乐播放器之完结篇 目录 前言 一.WAV格式 二.FIFO模块 三.音频-SD卡交互模块 四.锁相环模块 五.按键去抖模块 六.按键控制模块 总结 前言 前面已经介绍了WM873 ...

  8. python3.7魔塔游戏_基于Funcode平台的“火锅版魔塔”游戏开发与设计

    2019 年第 2 期 信息与电脑 China Computer & Communication 软件开发与应用 基于 Funcode 平台的"火锅版魔塔"游戏开发与设计 ...

  9. 基于魔兽RPG对当前游戏发展趋势的分析,以及尝试一个高游戏性玩法的设计

    游戏发展中有这么一束分支,玩家可以从魔兽争霸3:冰封王座基本游戏模式开始延伸,并通过地图编辑器降低游戏开发门槛,创造开发自己的游戏模式,即魔兽RPG. 如果客观的看,魔兽RPG符合一个优胜劣汰的进化守 ...

最新文章

  1. 实现一个spring webservice服务端二:创建一个可以访问的webservice
  2. 【Infragistics教程】使用可重复使用的自定义组件更快地创建原型
  3. 《深入理解计算机系统》读书笔记五:信息的表示和存储
  4. Sharding-JDBC(一)简介
  5. CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解!
  6. C#调用WebService
  7. Java代码实现执行HTTP请求
  8. 异常是catch还是throws的简单原则
  9. docker image设置jdk版本_使用Docker搭建Java环境的步骤方法
  10. python做词典_字典实现
  11. 个人简历怎么写怎么做(还有怎么培养无私奉献的精神--模板)
  12. 推荐几个微信小程序开源项目
  13. 随机森林算法(Random Forest)原理分析及Python实现
  14. CAD专用卸载修复工具,一键完全彻底卸载删除CAD软件的专用卸载工具
  15. 获取TrustedInstaller权限
  16. java-php-python-ssm学生学籍信息管理系统计算机毕业设计
  17. 移远BC35-G配置网络连接阿里云MQTT发送数据
  18. 数字化生存时代的变与不变
  19. Ubuntu屏幕录像软件推荐-Kazam
  20. 计算机毕业设计 SpringBoot+Vue线上素菜超市平台蔬菜商城管理系统 蔬菜超市平台系统

热门文章

  1. 计算机大致可以分为大型计算机嵌入式系统,根据市场产品来看,计算机大致可以分为大型计算机、( )和嵌入式系统三类。...
  2. 计算机组成原理 小说,计算机组成原理--中央处理器CPU5
  3. LiteFlow学习(超详细)
  4. 某游戏公司面试全过程
  5. “第三方即时配送”第一股那些事:顺丰同城成功上市后时代
  6. 穿越红尘不扰关,回旋天地去复还
  7. 【51毕设案例】【003】篮球计分器-基于51单片机
  8. 通过cv2读取视频,并在视频上画框
  9. SketchUp Pro 2022 Mac最新版支持m1支持12系统性能上大提升
  10. 西门子HMI故障诊断方法简介