For the complete documentation index, see llms.txt. This page is also available as Markdown.

阶段 3:带单个参数的自定义操作

动作可以带有参数,例如: 拾取 是一个期望接收一个将被拾取的对象的动作,在本指南中,我们将了解如何解析这些参数,以及诸如文本之类的其他类型参数。

引用对象或角色

在你的 AI 角色中引用对象或角色非常重要,原因有两个:首先,它会知道该对象/角色的存在;其次,当与它们相关的动作被触发时,你将能够获取这些对象或角色的引用,例如 移动到 - 拾取 - 跟随 都会始终与对象或角色一起触发

引用对象需要你将该对象添加到 环境 位于……中的对象 ConvaiChatbot 组件中。这样做有两种方式:

  1. 第一种方法是在场景中选择角色,然后在细节面板下,将引用添加到 Convai Info下的 Objects 数组中,这种方法要求你继承自 ConvaiBaseCharacter 蓝图。

  2. 开始游戏 事件中,在角色蓝图上遍历你希望角色了解的所有对象,然后将其添加到环境对象中。在下面的蓝图中,我们给想要添加到环境中的对象添加了标签,这样就能更方便地在开始游戏时获取它们,然后我们分别使用第二和第三个标签作为名称和描述。

  • 可以在运行时添加、编辑或移除对象。

  • 使用 Add Object 用于对象的函数和 添加角色 用于角色。

  • 如果你使用 CovnaiBaseCharacter 作为父类,则会处理环境中玩家和其他角色的添加。

解析对象和角色类型

当你成功将对象和角色添加到环境后,让我们通过一个快速场景来看看如何处理响应:

  • 创建一个名为 看向 的动作,该动作会强制 AI 角色看向某个特定对象或角色。

  • 在角色蓝图中创建一个同名事件,并添加一个类型为 Convai Result Action的输入参数,这将包含该动作所需的参数,在我们的例子中就是要看向的对象/角色。

  • 现在让我们按如下方式完成实现,我们将拆分 动作参数 结构,然后设置 相关对象或角色主角,请注意,这只是一个让 AI 角色看向所引用对象或角色的快速技巧。

  • 拆分 相关对象或角色 结构,以获取有关该对象或角色的更多详细信息,例如其引用、名称和描述。

  • 如果你没有为该对象添加引用,你将得到一个无效引用,但仍然可以得到名称和描述。

解析其他参数类型

待续..

最后更新于

这有帮助吗?