Generic Gameplay Abilities 1.6
相对 1.5 的更新。这一版减少两块样板:StateTree 可以直接读 GAS 和属性,编辑器可以用 Data Asset 生成带复制的原生 AttributeSet。升级难度偏低,多数项目是增量可升;蓝图属性分类、插件 ini 和生成器设置改名需要核对。
新增
- AI 图不必再为读血量或法力写一层胶水。 StateTree 启动时从 AIController / Pawn 解析
UAbilitySystemComponent。四个 Tick evaluator 可按属性或 Gameplay Tag 读取当前值或百分比。 - 新属性集可以生成带复制和夹值的 C++,不必手写一套 AttributeSet。 内容浏览器新增 GGA Attribute Set Definition,可声明复制、上限属性和 Native Tag,并套用 Health / Mana / Stamina / Combat 模板。
- 生成出的属性和内置集走同一套蓝图回调。 EventBridge 把 Clamp、Execute 和复制后的变化转到同 Actor 上的
UGGA_AttributeSystemComponent。已有该组件的 Actor 会开始收到这些回调。 - 核心配置资产可以在内容浏览器里直接新建。 Ability Set 与 Ability Tag Relationship Mapping 有了 Factory,不再只能复制现有资产。
- Mac 进入运行时与编辑器平台。 本版本面向 Unreal Engine 5.8。
变更
- 内置 AttributeSet 和生成器产出同一套分类。
UAS_Health/Mana/Stamina/Combat的蓝图分类改为GGA|Attributes|*。公开类型名和主要属性名仍在,菜单归组会变。 - Gameplay Effect 执行前可以在蓝图里拦下来。
UGGA_AttributeSystemComponent补上 Pre-Execute 事件,返回false即阻止本次执行。 - 生成器路径改到项目设置里的正式类。 类名是
UGGA_EditorDeveloperSettings,菜单仍在 Project → Plugins → GGA AttributeSet Generator。1.6 开发快照里的旧类名没有 ClassRedirect。 - 插件配置改由引擎按插件名加载。
Config/BaseGenericGameplayAbilities.ini改为DefaultGenericGameplayAbilities.ini。
升级说明
增量可升。C++ 模块依赖、蓝图属性菜单、ini 路径,以及跟过 1.6 开发快照的生成器设置可能要改。不改通常仍能编译;属性节点可能跑到新分类,旧 Base*.ini 可能不再被加载。
- 工程需要能解析
StateTreeModule与AIModule。插件依赖本身在 1.5 已声明 StateTree。 - 如果仍引用
BaseGenericGameplayAbilities.ini,改成DefaultGenericGameplayAbilities.ini。 - 使用内置 AttributeSet 蓝图节点的资产,分类会从
Attribute|*Set迁到GGA|Attributes|*。显示名未改。 - Actor 上如果已有
UGGA_AttributeSystemComponent,内置 AttributeSet 现在会把 GAS 回调转过去。 - 如果把生成器路径写进了旧的
UGGA_AttributeSetGeneratorSettings,手动迁到UGGA_EditorDeveloperSettings。
