1. 游戏技能系统(Gameplay Ability System,简称GAS)插件介绍

这里先引用虚幻官方文档中的一段话:

Gameplay Ability System 是一个高度灵活的框架,可用于构建你可能会在 RPG 或 MOBA 游戏中看到的技能和属性。你可以构建可供游戏中的角色使用的动作或被动技能,实现各种属性累积或损耗的状态效果,实现限制这些动作使用的冷却计时器或资源消耗,更改技能等级及对应每个技能等级下的技能效果,激活粒子以及音效等等。简单来说,此系统可帮助你在任何现代 RPG 或 MOBA 游戏中设计、实现及高效关联游戏中各种的技能,既包括跳跃等简单技能,也包括任何你喜欢的角色的复杂技能。

GAS 插件是由 Epic Games 开发,并随着 Unreal Engine 4 一并推出的。其用法已经在 3A 级商业游戏(比如 Paragon 和 Fortnite 等)中进行了测试和验证。

这套插件针对单人/多人游戏提供了一套开箱即用的方案,其内容主要包括:

  • 实现了基于等级的角色能力或技能,并可以配置相应的消耗和冷却时间(参见 GameplayAbilities 相关章节)
  • 操作 Actor 的属性(参见 Attributes 相关章节)
  • 为 Actor 施加状态效果(参见 GameplayEffects 相关章节)
  • 为 Actor 添加标签(参见 GameplayTags 相关章节)
  • 添加视觉特效或是声效(参见 GameplayCues 相关章节)
  • 针对上述所有内容的网络复制

在多人游戏中,GAS 针对客户端预测也做了一定程度的支持:

  • 技能激活
  • 播放动画蒙太奇
  • 修改 Attributes
  • 应用 GameplayTags
  • 生成 GameplayCues
  • 通过连接到 CharacterMovementComponentRootMotionSource函数进行运动

GAS 必须使用 C++ 来进行设置,但是 GameplayAbilitiesGameplayEffects 可以由设计师通过蓝图来进行创建。

GAS 目前也存在的一些问题:

  • GameplayEffect 延迟调节(不能预测技能冷却时间而导致高延迟的玩家与低延迟的玩家相比,其低冷却的技能频率是更低的)
  • 无法预测 GameplayEffect 的移除操作。但是,我们可以预测添加GameplayEffects的操作,从而预测其反向效果,从而高效得对效果进行清除。但这也并不总总是是合理或可行的,所以这一块目前仍然是一个问题
  • 缺少规范性的模板,多人游戏的示例,以及相应的文档。希望本文能够有助于解决这个问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值