From 4ec47a0dab32729d20389078ee78f89b64c12cab Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 22 九月 2025 15:58:57 +0800 Subject: [PATCH] 129 【战斗】战斗系统-服务端(张星彩怒技,觉醒技能;增加buff消失后触发时机;增加效果6007 6008 7001 7002;技能友好目标增加类型2:一定包含自己的友方单位) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 89 ++++++++++++++++++++++++++++++++++---------- 1 files changed, 68 insertions(+), 21 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py index 356ab3b..7726a8f 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py @@ -160,7 +160,13 @@ AttrID_WuFinalDamPerDef, # 对吴减伤 62 AttrID_QunFinalDamPer, # 对群增伤 63 AttrID_QunFinalDamPerDef, # 对群减伤 64 -) = range(1, 1 + 64) +AttrID_SkillPer, # 技能增伤 65 +AttrID_SkillPerDef, # 技能减伤 66 +AttrID_PursueDamPer, # 追击增伤 67 +AttrID_PursueDamPerDef, # 追击减伤 68 +AttrID_ComboDamPer, # 连击增伤 69 +AttrID_ComboDamPerDef, # 连击减伤 70 +) = range(1, 1 + 70) # 需要计算的武将战斗属性ID列表 CalcBattleAttrIDList = [AttrID_Atk, AttrID_Def, AttrID_MaxHP, AttrID_StunRate, AttrID_StunRateDef, @@ -173,6 +179,8 @@ AttrID_ShieldPer, AttrID_ShieldPerDef, AttrID_DOTPer, AttrID_DOTPerDef, AttrID_WeiFinalDamPer, AttrID_WeiFinalDamPerDef, AttrID_ShuFinalDamPer, AttrID_ShuFinalDamPerDef, AttrID_WuFinalDamPer, AttrID_WuFinalDamPerDef, AttrID_QunFinalDamPer, AttrID_QunFinalDamPerDef, + AttrID_SkillPer, AttrID_SkillPerDef, AttrID_PursueDamPer, AttrID_PursueDamPerDef, + AttrID_ComboDamPer, AttrID_ComboDamPerDef, ] # 基础三维属性ID列表 @@ -205,12 +213,14 @@ Def_CalcAttr_LV, # 主公等级 0 Def_CalcAttr_MainEquip, # 主装备 1 Def_CalcAttr_HeroBook, # 武将图鉴 2 -) = range(3) +Def_CalcAttr_Realm, # 官职 3 +) = range(4) CalcAttrName = { Def_CalcAttr_LV:"主公等级", Def_CalcAttr_MainEquip:"主装备", Def_CalcAttr_HeroBook:"武将图鉴", + Def_CalcAttr_Realm:"官职", } ##----------------------------------------------------------------------------------------------- @@ -958,11 +968,11 @@ HurtType_Normal, # 伤害 1 HurtTYpe_Recovery, # 回血 2 HurtType_3, -HurtType_4, +HurtType_Immune, # 免疫 4 HurtType_Parry, # 格挡 5 -HurtType_IgnoreDef, # 无视防御 6 +HurtType_IgnoreDef, # 无视防御/真实伤害 6 HurtType_SuperHit, # 暴击 7 -HurtType_8, +HurtType_Stun, # 击晕 8 仅算概率触发的击晕,技能额外击晕效果的不算 HurtType_Miss, # 闪避 9 ) = range(10) @@ -1317,9 +1327,10 @@ Def_CalcTypeList = ( Def_Calc_Attack, # 攻击 0 Def_Calc_MaxHP, # 最大生命值 1 -Def_Calc_HurtValue, # 伤害值 2 +Def_Calc_LastHurt, # 最后一次伤害值 2 Def_Calc_TagMaxHP, # 目标最大生命值 3 -) = range(4) +Def_Calc_ByBuffValue, # 触发buff的buff值 4 +) = range(5) #治疗类型(影响公式参数) Def_CureTypeList = ( @@ -3061,9 +3072,6 @@ Def_Obj_Dict_SkinID = 'SkinID' # 该战斗NPC所绑定的武将皮肤ID,一般仅玩家阵容有 Def_Obj_Dict_TurnFightPosInfo = 'TurnFightPosInfo' # 回合制站位: 阵营编号*100+阵型站位,阵型站位为0时代表非主战单位 Def_Obj_Dict_TurnFightTimeline = 'TurnFightTimeline' # 回合制战斗时间线: 回合数*100+行动编号节点 -Def_Obj_Dict_TurnComboNum = 'TurnComboNum' # 单次累计连击次数 -Def_Obj_Dict_TurnAtkBackNum = 'TurnAtkBackNum' # 单次累计反击次数 -Def_Obj_Dict_TurnParryNum = 'TurnParryNum' # 单次累计格挡次数 Def_Obj_Dict_TurnMissNum = 'TurnMissNum' # 单次累计闪避次数 Def_Obj_Dict_TurnBattleType = 'TurnBattleType' # 本次攻击战斗类型:TurnBattleType_xxx @@ -3135,12 +3143,14 @@ BatObjState_Poison, # 中毒 5 BatObjState_Bleeding, # 流血 6 BatObjState_EasyHurt, # 易伤 7 - BatObjState_Wudi, # 无敌 8 + BatObjState_Wudi, # 无敌( 受任意伤害、控制类、dot效果,全部飘“免疫”) 8 BatObjState_Sneer, # 嘲讽 9 BatObjState_LimitSkill, # 沉默 10 BatObjState_LimitAddHP, # 禁疗 11 BatObjState_Stone, # 石化 12 -) = range(13) + BatObjState_Disarm, # 缴械 13 + BatObjState_ParryYJ, # 格挡印记 14 +) = range(15) # 被控制的状态列表,无法行动,处于某些控制类buff影响状态下,如晕眩,冰冻,石化 InControlledStateList = [BatObjState_Frozen, BatObjState_Stun, BatObjState_Stone] @@ -4268,17 +4278,45 @@ TriggerWay_HeroTurnEnd, # 武将回合开始时 5 TriggerWay_HeroActionStart, # 武将行动前 6 TriggerWay_HeroActionEnd, # 武将行动后 7 -TriggerWay_CalcTagInState, # 攻击计算时对方处于xx状态时(参数:状态1|2|...)一般用于攻击时属性计算 8 -TriggerWay_AttackOverTagInState, # 攻击计算后对方处于xx状态时(参数:状态1|2|...)一般用于攻击后触发效果 9 -TriggerWay_AttackOverDirect, # 直接攻击后 (非buff攻击)10 +TriggerWay_CalcEffValue, # 统计计算效果值时 8 +TriggerWay_UseSkillOver, # 使用技能后(每个目标触发一次)9 +TriggerWay_AttackOverDirect, # 直接攻击后(除dot或buff外的攻击,每个目标触发一次)10 TriggerWay_BeAttackedDirect, # 受到直接攻击时 (非buff攻击)11 TriggerWay_ShieldBroken, # 承伤盾被击破时 12 TriggerWay_CurSkillEff, # 本技能/buff释放后,一般用于本技能/buff释放后触发,仅该技能释放后有效 13 -) = range(1, 1 + 13) +TriggerWay_CurSkillEffLst, # 本持续buff结算后额外触发效果,仅该持续buff结算后有效 14 +TriggerWay_KillOneObj, # 击杀目标后(单次击杀多目标只触发一次) 15 +TriggerWay_KillTagObj, # 击杀每目标后(单次击杀多目标每个目标触发一次) 16 +TriggerWay_BuffDel, # buff消失后 17 +) = range(1, 1 + 17) + +# 不加载的被动触发方式,一般用于本技能固定触发逻辑用的 +TriggerWayNoLoadList = [TriggerWay_CurSkillEff, TriggerWay_CurSkillEffLst] # 被动触发有效来源 -TriggerSrc_Skill = 1 -TriggerSrc_Buff = 2 +TriggerSrc_Skill = 1 # 身上技能有效 +TriggerSrc_Buff = 2 # 身上buff有效 +TriggerSrc_SkillSelf = 3 # 本技能有效 +TriggerSrc_BuffSelf = 4 # 本buff有效 + +# 被动效果ID,属性类的直接使用属性ID当做效果ID +PassiveEff_AddBuffLayerByWeight = 6001 # 根据权重随机添加buff层数 数值1-[[权重,层级], ...] +PassiveEff_ChangeHurtType = 6002 # 变更伤害类型: 值1-伤害类型;值2-可附加验证处于xx状态 [状态1, 状态2, ...] +PassiveEff_ChangeHurtMulti = 6003 # 变更伤害倍值(可增可减): 值1-变更倍值;值2-可附加验证处于xx状态 [状态1, 状态2, ...] +PassiveEff_AddSkillPer = 6004 # 增加本次技能万分比: 值1-增加的万分比;值2-可附加验证处于xx状态 [状态1, 状态2, ...] +PassiveEff_AddSkillTagCnt = 6007 # 增加技能目标数:值1-增加目标个数 +PassiveEff_ImmuneControlBuff = 6008 # 生命值低于x%时免疫控制效果:值1-百分比 + +# 被动效果ID有触发值时就返回的 +PassiveEffHappenValueList = [PassiveEff_ChangeHurtType] +# 被动效果ID触发值取最大值的 +PassiveEffValueMaxList = [] +# 被动效果ID触发值取最小值的 +PassiveEffValueMinList = [] + +# 技能效果 - 不需要配置触发方式的 +SkillEff_CureWayEx = 7001 # 额外治疗值计算(对CalcType、SkillPer治疗计算方式扩展): 值1-计算方式;值2-万分比 +SkillEff_HurtShare = 7002 # 均摊伤害 ( TriggerType_BeSuperHit, # 被暴击触发技能 1 @@ -4371,7 +4409,7 @@ TriggerType_ThumpSkillValue, # 重击增加技能固定值伤害 88 TriggerType_HitValue, # 记录命中个数 89 TriggerType_ChangeSkillEff, # 改变技能特效广播 90 -) = range(1, 91) +) = range(1001, 1091) #不可以佩戴翅膀的地图 @@ -4979,8 +5017,7 @@ Def_SkillFuncType_TurnNormaSkill, #1 普攻技能 Def_SkillFuncType_AngerSkill, #2 怒气技能 Def_SkillFuncType_PotentialSkill, #3 潜能技能 -Def_SkillFuncType_AtkbackSkill, #4 反击技能 -) = range(5) +) = range(4) # MMO项目 - 先保留,重新定义从1000开始,后续可陆续删除 (Def_SkillFuncType_Common, #0为通用技能 @@ -5028,6 +5065,16 @@ AtkDistType_Long, # 远程 ) = range(1, 1 + 2) +# 武将特长 +HeroSpecialtyList = ( +HeroSpecialty_Stun, # 击晕 1 +HeroSpecialty_SuperHit, # 暴击 2 +HeroSpecialty_Combo, # 连击 3 +HeroSpecialty_Miss, # 闪避 4 +HeroSpecialty_Parry, # 格挡 5 +HeroSpecialty_SuckHP, # 吸血 6 +) = range(1, 1 + 6) + # 经验倍率限制类型 ( ExpRateLimitType_Recover, # 资源找回 -- Gitblit v1.8.0