《西游记》AI实时对话游戏,发布

快来体验!由AI驱动的游戏剧情:

AI Game,Dialogue Game,real-time painting, API, GPT

得益于生成式AI,让我们体验到了实时的游戏。

dc00c7a013382ea1676dbd507de238b2.png

rui zhang

← 本项目作者

b4f0ab48fbec9fbcadb90067f3ffae20.jpeg

ef7838bd3b26ef80ff7b79aeff6b3660.jpeg

d33ca03310fc2e8a7370eff501c07785.jpeg

4d7a952d08004c5ed1f0758475ec1893.jpeg

bc1bd49d26677f55ab6b2f295620ccbb.jpeg

28740314827a8ff20a07283df3ce565a.jpeg

1ba85cded7b334a243d156afcfc16449.jpeg

0379c92a907838747e89ae0a1cce828e.jpeg

4b944c87e940f9fd196fe974100c0555.jpeg

5048eb594e6ef56a65b81a82ca473f60.jpeg

3a1a0212fce66c73140deab9bda26d69.jpeg

85dfe080dcccd9118e23deaabf64d4e9.jpeg

ComfyUI工作流

在 ComfyUI 中构建了一个以中国神话故事“西游记”为主题的交互式实时对话游戏。

你将扮演刚出生的美猴王孙悟空。


GPT 负责剧本编写,SDXL 和 Dall.E3 负责创作插图,MS-TTS 负责提供各种声音的口语对话。经过整个布置和设计的过程,一切都像一幅卷轴画一样呈现在你的眼前。

您可以从 GPT 提供的 4 个选项中进行选择,然后游戏继续展开。您可以自由地改变故事情节,GPT 全程陪伴您,将您的想象力转化为令人惊叹的视觉效果。

整个工作流程是如何实现的?

分为12个模块,每个模块的详细介绍:

78603e5f7e33035e9da38a24b5e39d1b.png

1. StoryLine-GPT


该模块利用 MixLab 的 GPT 节点。它负责调用GPT的API,上传写好的Prompt,让GPT完成故事的编写,为玩家提供新的选项。这是游戏的核心。


您可以在“故事提示”中看到设置的提示。它仍然很粗糙,但足以开始游戏,我将继续完善它。


“ShowText”显示从 GPT 返回的文本,该文本将显示给玩家,包括当前情节的简短描述和四个选项。


输出完成后“PlaySound”会发出一声提示音,由于整个过程比较长,这个声音会提醒您故事编写工作已经完成。模块2和模块5中也设置了类似的蜂鸣声。当您听到三声蜂鸣声时,表示新的游戏图像即将出现。

MIiXLab:https: //github.com/shadowcz007/comfyui-mixlab-nodes


要使用此节点,您需要在第一个输入框中输入您的 OpenAI API,您可以从 OpenAI 官方网站获取该 API。在第二个输入框中输入URL:https: //api.openai.com/v1
选择型号:gpt-4-1106-preview


可以填写任意Seed,但更改Seed就意味着以清晰的记忆开始新的对话。


Control_after_generate:选择“固定”,以便 GPT 可以记住并继续故事情节。

据我所知,这是ComfyUI中唯一支持此内存功能的GPT节点。其开发者 Shadow 正在快速更新其功能,因此请确保您使用的是最新版本。

c0a202d95b1764c02fac574bd4b975df.png

2. Prompt-GPT


该模块的功能与模块1完全相同,只是将模块1所写的故事转化为插图绘画提示,以便在SDXL中使用。

cfb230fd26d229b8cd923eb4a829702e.png

3. TTS


使用“MSSpeech_TTS”读取模块1的故事输出。


速率是叙述的速度。该节点将生成的语音保存在ComfyUI文件夹中并输出路径。


“PlaySound At Execution”节点负责 mp3 播放并由 Image 节点触发。


我使用 AnyWhere 来传输图像信息,当最终图像准备好时会触发该信息(您可以在模块 9 中找到它)。

MSSpeech_TTS:https://github.com/chflame163/ComfyUI_MSSpeech_TTS

112c8f36bf3b0e99645fb4167529a3e6.png

4. BG-Music


使用相同的“PlaySound At Execution”节点来播放本地音乐。


不幸的是,两个播放节点不能同时工作,当TTS开始朗读故事时,背景音乐就会停止。


我还没有找到其他音频播放节点,所以我建议你直接用播放器播放本地音乐。

Vextra-Nodes:https://github.com/diontimmer/ComfyUI-Vextra-Nodes

13f547eca8009d8223bc24a3945a03b6.png

5. SDXL


使用模块2的提示输入来绘制游戏图像。


我使用的模型是:

starlightXLAnimated_v2

https://civitai.com/models/143043/starlight-xl-animated

a9341f0e318841b4171fbdb770ce46a7.png

6. Dall.E3


我使用Dall.E3作为绘图模型的替代品,使用“ComfyUI-NegiTools”节点连接到Dall.E3 API。友情提醒:虽然价格昂贵,但效果非常好。

NegiTools:https://github.com/natto-maki/ComfyUI-NegiTools

657c0b6356e3e035a9cb4542c92f8523.png

7. 型号选择


该模块用于在SDXL 和Dall.E3 之间进行选择。

c5d7924305711a6ed183fc02d60aff0b.png

8. WaterMarks


ZHO文本节点用于在图像上写入版权信息。用于计算坐标的节点有很多,但你不需要担心它们。只需使用绿色节点即可。


您可以在“文本”中输入任何您想要显示的文本。

Text_Image-Composite https://github.com/ZHO-ZHO-ZHO/ComfyUI-Text_Image-Composite

fbbedc3b6782ad905d28372009f0fc6c.png

9. 文本到图像


模块1输出的故事文本被转换成图像,显示在最终图像的右侧。
这里使用与模块 8 中相同的文本节点。

34e51ef8cb4bec1454bf9de3bf16cbf3.png

10. 布局


所有图像都组装在一起。


我创建了一个背景图像,一个中国风格的卷轴。在图像的顶部和底部,我放置了游戏徽标:BG.jpg。


然后我将模块3中绘制的游戏图像粘贴到卷轴的左侧。为了混合图像并自然滚动,我在顶部创建了一个边框蒙版:Mask.png。

最后,将模块9输出的故事文本图像粘贴到图像的右侧。


完成所有集成后,我通过 AnythingAnywhere 输出。


在模块 3 和 12 中,将有节点接收此信息。


这里我使用SaveImage来存储图像,以便使用更简洁的PreViewImage节点来进行最终的显示。

c9e957ca3047084375493fafca48784a.png

11. 保存文本


模块1输出的所有故事文本将被汇总在这里并存储在ComfyUI的out文件夹中,文件名为日期,格式为“date.txt”。

336255a19db4de6a143070056896eb7c.png

12.游戏画面


最终呈现给玩家的画面,底部有一个文本输入框,供玩家输入命令。

最初你可以输入:开始游戏

工作流下载地址:

https://openart.ai/workflows/rui400/ai-dialogue-game-journey-to-the-west/a1tZ3PVVh6eP98Onc33h

交流社群:

52a1b89289bb72d8e4bc4eeed2665cbb.jpeg

5277c3a8a6baed40aba3a4fba9802c43.jpeg

67de1e1c767e631b0ff67c0759cf8be5.jpeg

相关推荐

  1. Azure AI发布了 9 种更逼真的对话 AI 声音

    2023-12-10 22:58:02       37 阅读
  2. Spring AI使用向量数据库实现检索AI对话

    2023-12-10 22:58:02       34 阅读
  3. 实战:结合AI作图完成一个新闻发布管理

    2023-12-10 22:58:02       35 阅读
  4. 【阅读笔记】《西游记

    2023-12-10 22:58:02       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-10 22:58:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-10 22:58:02       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-10 22:58:02       87 阅读
  4. Python语言-面向对象

    2023-12-10 22:58:02       96 阅读

热门阅读

  1. WordPress 注册/重置密码/更改密码钩子

    2023-12-10 22:58:02       58 阅读
  2. python 记录今日学习按键消息心得

    2023-12-10 22:58:02       56 阅读
  3. linux 关于$-的解释(帖子搜索合集)

    2023-12-10 22:58:02       81 阅读
  4. DockerFile中途执行出错的解决办法

    2023-12-10 22:58:02       59 阅读
  5. C++运算符重载

    2023-12-10 22:58:02       42 阅读
  6. 【Go自学版】01-基础

    2023-12-10 22:58:02       60 阅读
  7. springboot分页查询

    2023-12-10 22:58:02       57 阅读
  8. Python ipaddress模块介绍

    2023-12-10 22:58:02       58 阅读
  9. 2020蓝桥杯c组纸张大小

    2023-12-10 22:58:02       64 阅读
  10. 生活小记录

    2023-12-10 22:58:02       53 阅读
  11. FCN 模型简介及代码

    2023-12-10 22:58:02       48 阅读
  12. PyQt创建界面

    2023-12-10 22:58:02       56 阅读