1、Gameplay Ability System插件简介

1. Gameplay Ability System插件简介

根据官方文档的描述:

游戏能力系统(Gameplay Ability System,简称GAS)是一个高度灵活的框架,用于构建在RPG或MOBA类游戏中常见的能力和属性系统。通过这个系统,你可以为游戏角色创建主动技能或被动能力,实现各种状态效果来提升或削弱不同属性,设置技能冷却时间或资源消耗来管理技能使用,调整能力等级及其效果,触发粒子或音效等等。简单来说,这个系统可以帮助你设计、实现并高效地网络同步游戏中的各种能力,从简单的跳跃到现代RPG或MOBA游戏中复杂的角色技能组合都可以实现。

GAS插件由Epic Games开发,是虚幻引擎的内置插件。它已在《Paragon》和《堡垒之夜》等多款AAA商业游戏中经过实战检验。

这个插件为单人和多人游戏提供了一套完整的解决方案,包括:

在多人游戏中,GAS支持以下功能的客户端预测(client-side prediction)

  • 技能(Ability)激活
  • 播放动画蒙太奇
  • 属性值(Attribute)变化
  • 添加GameplayTags
  • 触发GameplayCues
  • 通过RootMotionSource函数与CharacterMovementComponent连接的移动功能

注意:GAS必须在C++中进行设置,但设计师可以在蓝图中创建游戏能力 GameplayAbility游戏效果 GameplayEffect

目前GAS存在的问题:

  • GameplayEffect的延迟调和(Latency Reconciliation)(无法预测技能冷却时间,导致高延迟玩家在使用低冷却技能时,实际发射速度会低于低延迟玩家)
  • 无法预测GameplayEffect的移除。虽然我们可以通过预测添加相反效果的方式来实现移除GameplayEffect,但这种方法并不总是合适或可行
  • 缺少样板模板、多人游戏示例和文档(希望本文能对此有所帮助!)