struckd 中文文档 下载 App

Struckd Muse Behavior 变量与数据类型 Object Float String

为什么需要变量

行为树不只是"从 A 走到 B"的直线——很多逻辑需要"记住"一些信息,然后在后续节点中使用。变量就是行为树里用来"存数据"的地方。

比如你想做"玩家在某个区域内总共收集了 5 枚金币后才允许通关",你需要一个变量来记住"已经收集了多少枚"。

三种变量类型

Muse Behavior 目前支持三种变量类型:

Object(对象)

Object 类型变量用来存储"游戏场景中的某个对象引用"——比如某个特定的 NPC、某个特定的金币、某个特定的可破坏物体。

典型用途:

Float(浮点数)

Float 是带小数点的数值,用来存储"可量化的数值"——比如分数、距离、时间、百分比等。

典型用途:

String(字符串)

String 用来存储"文字"——比如对话内容、标签文字、名称等。

典型用途:

变量的作用域

在 Muse Behavior 中创建的变量:

如果需要跨资产传递状态,可以用"公共的游戏事件"来实现——但这比变量复杂得多,官方文档没有详细说明。

创建变量

在 Muse Behavior 编辑器中,右键空白处选择"Create Variable",然后选择类型和初始值即可。变量创建后会出现在右侧的变量列表里,可以被任何节点引用。

与 Unity 的关系

变量在导出到 Unity 时不会被自动保留。你需要在 Unity 里自己定义对应的字段和数据结构来替代——Muse 变量只是一个临时的行为树内数据存储,导出后需要重新实现。