feat(skill-system): 新增计时debuff机制,支持技能命中敌方附加减益效果

本次提交完整实现了技能对敌附加debuff的完整流程:
1.  新增TimedDebuffSnapshot数据结构,用于透传debuff配置
2.  在SkillConfig和SkillOverrides中新增debuff相关配置项
3.  实现HeroAtkSystem中debuff的判定与施加逻辑
4.  完善后台配置、前端编辑器的debuff配置支持
5.  调整了buff目标判定逻辑,修复了原有默认目标的语义混淆问题
6.  优化了BuffSystem的调试日志,新增了debuff分类标识
7.  批量更新了现有英雄技能的debuff配置示例
This commit is contained in:
pan
2026-09-08 16:37:13 +08:00
parent f5908a9adf
commit be17d18ff3
16 changed files with 214 additions and 124 deletions

View File

@@ -31,10 +31,9 @@
"lv": 2,
"s_lv": 2,
"overrides": {
"timed_buff_id": 7012,
"buff_value": 30,
"buff_chance": 100,
"buff_duration": 5
"timed_debuff_id": 7007,
"debuff_value": -10,
"debuff_chance": 100
},
"desc": "普通攻击造成 120% 攻击伤害"
}
@@ -146,7 +145,7 @@
"cdExpr": null,
"overrides": {
"ap": 150,
"timed_buff_id": 7002,
"timed_debuff_id": 7002,
"icon": "Stat_AttackSpeed_02"
},
"desc": "斩出气刃,对{target}造成攻击力{ap}%伤害,并使目标易伤(受到伤害加深,持续{dur}秒)",
@@ -435,11 +434,11 @@
"lv": 2,
"s_lv": 2,
"overrides": {
"timed_buff_id": 7007,
"buff_value": 30,
"buff_chance": 30
"timed_debuff_id": 7007,
"debuff_value": 30,
"debuff_chance": 30
},
"desc": "普通攻击有{buff_chance}%概率使目标出血(每0.5秒受到{buff_value}点伤害,持续{dur}秒)"
"desc": "普通攻击有{debuff_chance}%概率使目标出血(每0.5秒受到{debuff_value}点伤害,持续{dur}秒)"
}
]
},
@@ -458,20 +457,20 @@
"s_lv": 2,
"overrides": {
"ap": 250,
"timed_buff_id": 7007,
"buff_value": 40
"timed_debuff_id": 7007,
"debuff_value": 40
},
"desc": "高速斩击{target},造成攻击力{ap}%,并使目标出血(每0.5秒受到{buff_value}点伤害,持续{dur}秒)"
"desc": "高速斩击{target},造成攻击力{ap}%,并使目标出血(每0.5秒受到{debuff_value}点伤害,持续{dur}秒)"
},
{
"lv": 16,
"s_lv": 3,
"overrides": {
"ap": 350,
"timed_buff_id": 7007,
"buff_value": 60
"timed_debuff_id": 7007,
"debuff_value": 60
},
"desc": "高速斩击{target},造成攻击力{ap}%,附带 50% 概率麻痹,并使目标出血(每0.5秒受到{buff_value}点伤害,持续{dur}秒)"
"desc": "高速斩击{target},造成攻击力{ap}%,附带 50% 概率麻痹,并使目标出血(每0.5秒受到{debuff_value}点伤害,持续{dur}秒)"
}
]
}
@@ -1479,11 +1478,11 @@
"lv": 2,
"s_lv": 2,
"overrides": {
"timed_buff_id": 7005,
"buff_value": 30,
"buff_chance": 30
"timed_debuff_id": 7005,
"debuff_value": 30,
"debuff_chance": 30
},
"desc": "普通攻击有{buff_chance}%概率使目标中毒(每0.5秒受到{buff_value}点伤害,持续{dur}秒)"
"desc": "普通攻击有{debuff_chance}%概率使目标中毒(每0.5秒受到{debuff_value}点伤害,持续{dur}秒)"
}
]
},
@@ -1494,12 +1493,12 @@
"cdExpr": null,
"overrides": {
"ap": 150,
"timed_buff_id": 7005,
"buff_value": 30,
"buff_chance": 50,
"timed_debuff_id": 7005,
"debuff_value": 30,
"debuff_chance": 50,
"icon": "4-Apply-Poison"
},
"desc": "毒箭如雨,对{target}造成攻击力{ap}%伤害,{buff_chance}%概率使目标中毒(每0.5秒受到{buff_value}点伤害,持续{dur}秒)",
"desc": "毒箭如雨,对{target}造成攻击力{ap}%伤害,{debuff_chance}%概率使目标中毒(每0.5秒受到{debuff_value}点伤害,持续{dur}秒)",
"lv_entries": [
{
"lv": 8,
@@ -1534,11 +1533,11 @@
"t_num": 3,
"overrides": {
"ap": 80,
"timed_buff_id": 7005,
"buff_value": 40,
"buff_chance": 100
"timed_debuff_id": 7005,
"debuff_value": 40,
"debuff_chance": 100
},
"desc": "追加射出蚀骨毒箭,对{target}造成攻击力{ap}%伤害,必定使目标中毒(每0.5秒受到{buff_value}点伤害,持续{dur}秒)"
"desc": "追加射出蚀骨毒箭,对{target}造成攻击力{ap}%伤害,必定使目标中毒(每0.5秒受到{debuff_value}点伤害,持续{dur}秒)"
}
]
},
@@ -1726,10 +1725,10 @@
"lv": 2,
"s_lv": 2,
"overrides": {
"timed_buff_id": 7008,
"buff_chance": 30
"timed_debuff_id": 7008,
"debuff_chance": 30
},
"desc": "普通攻击有{buff_chance}%概率使目标破甲(防御降低,持续{dur}秒)"
"desc": "普通攻击有{debuff_chance}%概率使目标破甲(防御降低,持续{dur}秒)"
}
]
},
@@ -1740,7 +1739,7 @@
"cdExpr": null,
"overrides": {
"ap": 150,
"timed_buff_id": 7008
"timed_debuff_id": 7008
},
"desc": "释放碎甲能量波,对{target}造成攻击力{ap}%伤害,并使目标破甲(防御降低,持续{dur}秒)",
"lv_entries": [
@@ -1775,7 +1774,7 @@
"t_num": 1,
"overrides": {
"ap": 150,
"timed_buff_id": 7008
"timed_debuff_id": 7008
},
"desc": "战斗开始时掷出蚀甲酸瓶,对{target}造成攻击力{ap}%伤害,并必定使其破甲(防御降低,持续{dur}秒)"
}