39传奇素材网 发表于 2025-5-30 14:01:47

BUFF系统核心技术解析:状态叠加、优先级博弈与动态平衡(三)

时效控制:动态衰减与事件刷新
1. 非线性持续时间算法
高阶BUFF采用分段式衰减(如护体神盾):

总时长 = 300秒
前100秒:效果100%
中100秒:效果70%
后100秒:效果40%
在QFunction-0.txt实现:

lua
[@OnBuffSecond]
#IF
EQUAL <$CURRRENTBUFF> 护体神盾
LARGE N$剩余时间 200
#ACT
SetBuffPower 100-- 100%效果
BREAK
2. 条件刷新机制
法师“魔法盾”受击刷新规则:

BLUE引擎:在Magic.DB设置HitRefresh=1

GOM引擎:需脚本判定

lua
[@OnAttack]
#IF
CheckBuff 魔法盾
#ACT
ResetBuffTime 魔法盾-- 重置持续时间
3. BUFF驱散的技术实现
道士“净化术”驱散敌方BUFF的两种方案:

驱散模式        实现命令        适用场景
概率驱散        REMOVEBUFFRANDOM 1        随机清除1个BUFF
指定类型驱散        REMOVEBUFFTYPE 3        清除控制类BUFF

页: [1]
查看完整版本: BUFF系统核心技术解析:状态叠加、优先级博弈与动态平衡(三)