• 30. UE5 RPG GamplayAbility的配置项


    在上一篇文章,我们介绍了如何将GA应用到角色身上的,接下来这篇文章,将主要介绍一下GA的相关配置项
    在这之前,再多一嘴,你要能激活技能,首先要先应用到ASC上面,才能够被激活。

    标签

    之前介绍过,GAS里重要的组件标签,GA和GA之间的逻辑处理也是通过Tag来实现的,接下来,介绍一下标签下面的配置项如何去使用。
    标签可以按需求设置多个
    在这里插入图片描述

    • Ability Tags :描述技能的标签,当设置了标签,我们可以通过使用标签来对技能处理,比如使用标签激活技能,结束技能等等。
    • Cancel Abilities with Tag :在此技能激活时,如果其它技能的Ability Tags 设置了Cancel内的标签,将会被结束。
    • Block Abilities with Tag :当此技能激活,其它技能的Ability Tags设置相同的tag,将无法激活。

    上面三个属于一个范畴,第一个是设置技能标签,相当于技能的另外一个名称,另外两个tag设置则是一个逻辑处理,举个例子:如果角色在使用一个持续的技能,被应用了一个眩晕的技能,眩晕的技能里,就应该把持续技能的标签设置到Cancel和Block中,来停止技能,以及再次激活技能。

    • Activation Owned Tags :当技能激活时,将设置的Tag应用给技能所有者,在结束时删除。如果将AbilitySystemGlobals里面的配置ReplicateActivationOwnedTags开启,Tag还将会被复制。
    • Activation Required Tags :当技能激活者拥有设置的所有的Tag时,此技能才能够被激活。
    • Activation Blocked Tags :当技能激活者有一项设置的Tag,技能就无法被激活。
    • Source Required Tags :当技能所有者拥有设置的所有的Tag时,此技能才能够被激活。
    • Source Blocked Tags:当技能所有者有一项设置的Tag,技能就无法被激活。
    • Target Required Tags :当技能目标者拥有设置的所有的Tag时,此技能才能够被激活。
    • Target Blocked Tags:当技能目标者有一项设置的Tag,技能就无法被激活。

    后六项基本上属于 对三个对象的设置 技能激活者 技能所有者 技能的应用目标,一项是设置必须拥有的Tag,一个是可以阻止激活技能的Tag.

    输入

    在这里插入图片描述
    如果开启了Replicate Input Directly ,你的操作事件将会被同步到服务器

    Costs

    cost这里我们可以设置一个GE,用于计算当前技能的消耗,比如消耗血啊,消耗蓝啊
    在这里插入图片描述
    设置完成以后,你需要在蓝图里面调用CommitAbility节点,去应用GE,返回值如果扣除成功将返回true
    在这里插入图片描述

    触发器

    触发器可以在角色身上添加了某个Tag时,来触发此GA
    在这里插入图片描述
    Trigger Source :
    Gameplay Event: 接收到带有Tag的Gameplay Event时触发GA,角色身上不会拥有此tag
    Owner Tag Added :OwnerActor添加相应的tag时触发GA,每次添加触发一次GA
    Owner Tag Present :OwnerActor拥有此tag的时候触发GA,失去时将取消GA

    冷却

    冷却和cost一样,也是需要使用一个GE去实现
    在这里插入图片描述
    当然,冷却也一样会被CommitAbility节点去核查冷却时间是否已经达到。

    高级设置

    高级设置里面主要设置同步策略以及实例化相关一些设置。
    在这里插入图片描述
    下面我们将对这些参数一个一个的介绍:
    Replication Policy 是否将技能的状态更新到每个客户端和服务器,Do Not Replicate 为不更新
    不要使用它,默认即可,GA已经从服务器复制到每个客户端(GA不会在Simulated Proxies上运行)
    在这里插入图片描述
    Instancing Policy 实例化策略 GA蓝图相当于一个类,我们每次激活GA相当于去实例化一个实例

    • Instanced Per Actor:给GA只实例化一个实例,每次激活都重用当前的实例,能够持久的存储数据
    • Instanced Per Execution :每次激活GA创建一个新的实例,不存储变量数据,性能低于Instanced Per Actor
    • Non-Instanced:使用类的默认对象,不实例化,性能最好,不能存储状态,不能使用委托。
      在这里插入图片描述
      Server Respects Remote Ability Cancellation 这个参数设置如果客户端取消技能,服务器会同步取消掉。不推荐使用,以服务器为准最好。
      Retrigger Instanced Ability 开启后,当前技能已经被激活,将关闭技能重新触发,Epic不推荐使用
      在这里插入图片描述
      Net Execution Policy 网络执行的策略,当前的技能需要在什么地方执行
    • Local Only: 只在本地执行,服务器不运行GA,这个推荐不影响其它客户端的GA
    • Local Predicted: 先在本地客户端运行,然后在服务器运行,可以使用预测策略,回滚操作。
    • Server Only: 只在服务器运行,这个适合不需要和客户端有交互的内容
    • Server Initiated: 在服务器端初始化,然后复制到本地,有延迟,不如Local Predicted
      在这里插入图片描述
      Net Security Policy 安全策略:分为执行GA和终止GA两项
    • Client Or Server : 没有安全策略,客户端或服务器可以自由执行和终止GA
    • Server Only Execution :执行会被服务器忽略,但是可以请求服务器中止GA
    • Server Only Termination:客户端请求取消或终止GA将由服务器监视。客户端仍然可以请求执行GA
    • Server Only:服务器控制GA的执行和终止,客户端的请求都将被忽视掉。
      在这里插入图片描述
  • 相关阅读:
    新服务器 CentOS 8.2 上安装 nginx 1.22 全过程
    web前端期末大作业【 大学生抗疫感动专题网页设计】HTML+CSS
    数据可视化素材分享 | 数十图表、无数模板
    锁定云栖大会!共同见证阿里云大数据+AI产品年度重磅发布及创新
    12.区块链系列之比特币NFT
    将回调函数转为Flow
    手动安装Docker安装详细教程
    前端缓存方法有哪些?cookie有哪些属性?
    计算机毕业设计 基于SpringBoot高校竞赛管理系统的设计与实现 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试
    Android11.0默认将所有app动态申请的权限打开
  • 原文地址:https://blog.csdn.net/qq_30100043/article/details/137245706