From f611ba2ca93e527c98b2d05ffefdcc21a6ed0bd1 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 30 十月 2025 15:42:49 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(何太后技能;优化孙坚技能buff额外属性逻辑;增加技能计算伤害类型6-按自残血量值;增加效果7008 5021 5022;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 77 ++++++++++++++++++++++++--------------
1 files changed, 48 insertions(+), 29 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index ce3d397..f0eb727 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -675,6 +675,7 @@
Def_Effect_RecycleItemMoney = 277 #回收物品转化为货币; A值-直接给货币物品ID;B值-货币数量
Def_Effect_FamilyEmblem = 278 #激活仙盟徽章; A值-徽章ID;
Def_Effect_HeroSkin = 279 #激活武将皮肤; A值-武将ID;B值-皮肤索引
+Def_Effect_FamilyTaofaCnt = 280 #增加公会讨伐次数; A值-讨伐次数
#----以下未使用或代码依然存在的---
Def_Effect_ItemGiveGongXun = 1920 #使用道具给予功勋
Def_Effect_ItemGiveRuneJH = 1925 #使用道具给予符印精华
@@ -972,7 +973,8 @@
HurtType_Miss, # 闪避 9
HurtType_PoisonCureHurt, # 伤害毒奶 10
HurtType_PoisonCureSuck, # 吸血毒奶 11
-) = range(12)
+HurtType_HarmSelf, # 自残 12
+) = range(13)
#伤害类型
(
@@ -1329,7 +1331,8 @@
Def_Calc_TagMaxHP, # 目标最大生命值 3
Def_Calc_ByBuffValue, # 触发buff的buff值 4
Def_Calc_TagLostHP, # 目标已损失生命 5
-) = range(6)
+Def_Calc_HarmSelfHP, # 按本次自残耗血值 6
+) = range(7)
#治疗类型(影响公式参数)
Def_CureTypeList = (
@@ -1481,11 +1484,10 @@
) = range( 0, Def_AutoAtkSkillType )
#技能类型
-Def_SkillType_Count = 25
(
Def_SkillType_Special , #特殊技能 0
Def_SkillType_Atk , #攻击类 1
- Def_SkillType_Rstr , #恢复类 2
+ Def_SkillType_Cure , #恢复类 2
Def_SkillType_LstPlsBuff , #持续增益BUFF 3
Def_SkillType_LstDepBuff , #持续减益BUFF 4
Def_SkillType_PlsBuff , #增益BUFF 5
@@ -1498,6 +1500,11 @@
Def_SkillType_Area , #场景技能(buff) 12
Def_SkillType_Summon , #召唤 13
Def_SkillType_Action , #影响行为BUFF 14
+ Def_SkillType_CleanBuff , #清除buff类(如净化等) 15
+) = range(0, 1 + 15)
+
+# 以下废弃
+(
Def_SkillType_LstPlsBuffAtk, #持续攻击类BUFF 15
Def_SkillType_PassivePlsBuff, #被动触发增益类buff 16
Def_SkillType_PassiveDepBuff, #被动触发减益类buff 17
@@ -1509,7 +1516,7 @@
Def_SkillType_AttrSkillNoLearn, # 可叠加的同类型ID属性类技能 不可学习 算属性直接取表 目前用于神兽技能 23
Def_SkillType_PassiveLstPlsBuffAtk, #被动持续攻击类BUFF 24
-) = range( 0, Def_SkillType_Count )
+) = range(115, 125)
#数据库中的Buff类型对应返回C++中的Buff类型对象
Def_SkillBuffList = {
@@ -1555,7 +1562,7 @@
#不进入战斗状态的技能
Def_NoBattleState_List = [
- Def_SkillType_Rstr , #恢复类 2
+ Def_SkillType_Cure , #恢复类 2
Def_SkillType_LstPlsBuff , #持续增益BUFF 3
Def_SkillType_PlsBuff , #增益BUFF 5
Def_SkillType_Passive , #被动技 7
@@ -2910,6 +2917,10 @@
Def_GameWallow_LV_Max,
)= range(0, 10)
+# 回合时机,以武将自身为参考
+TurnTiming_Before = 0 # 武将回合前
+TurnTiming_After = 1 # 武将回合后
+
# 回合攻击战斗类型
(
TurnBattleType_Normal, # 常规攻击 0
@@ -2933,7 +2944,6 @@
Def_Obj_Dict_HeroID = 'HeroID' # 该战斗NPC所绑定的武将ID,一般仅玩家阵容有
Def_Obj_Dict_SkinID = 'SkinID' # 该战斗NPC所绑定的武将皮肤ID,一般仅玩家阵容有
Def_Obj_Dict_TurnFightPosInfo = 'TurnFightPosInfo' # 回合制站位: 阵营编号*100+阵型站位,阵型站位为0时代表非主战单位
-Def_Obj_Dict_TurnFightTimeline = 'TurnFightTimeline' # 回合制战斗时间线: 回合数*100+行动编号节点
Def_Obj_Dict_TurnMissNum = 'TurnMissNum' # 单次累计闪避次数
Def_Obj_Dict_TurnBattleType = 'TurnBattleType' # 本次攻击战斗类型:TurnBattleType_xxx
@@ -3022,7 +3032,10 @@
BatObjState_DamBackShield, # 荆棘盾 22
BatObjState_BurnPlus, # 玄火(灼烧2) 23
BatObjState_PoisonCure, # 焚血(毒奶) 24
-) = range(1 + 24)
+ BatObjState_RebornLimit, # 无法复活 25
+ BatObjState_26, # 脆弱 26
+ BatObjState_27, # 阴咒 27
+) = range(1 + 27)
#玩家状态定义,不能超过31个,如超过,需扩展多个key支持
Def_PlayerStateList = (
@@ -3424,29 +3437,25 @@
Def_Player_Dict_TrialTower_PassLV = "TrialTower_PassLV" # 试炼之塔通关层数
Def_Player_Dict_TrialTower_LastDayPassLV = "Tower_LastDayPassLV" # 试炼之塔昨日通关层数
-#仙盟打坐
-Def_Player_Dict_FamilySitExpRound = "FamilySitExpRound" # 已给经验轮次
-Def_Player_Dict_FamilySitTotalExp = "FamilySitTotalExp" # 获得的总经验
-Def_Player_Dict_FamilySitTotalExpPoint = "FamilySitTotalExpPoint" # 获得的总经验点
+#公会讨伐
+Def_Player_Dict_FamilyTaofaCnt = "FamilyTaofaCnt" # 已讨伐次数
+Def_Player_Dict_FamilyTaofaItemAddCnt = "FamilyTaofaItemAddCnt" # 道具增加讨伐次数
+Def_Player_Dict_FamilyTaofaBuZhenState = "FamilyTaofaBuZhenState" # 是否已布阵
+Def_Player_Dict_FamilyTaofaAnger = "FamilyTaofaAnger" # 当前怒气
+Def_Player_Dict_FamilyTaofaBoxTotalGetCnt = "FamilyTaofaBoxTotalGetCnt" # 累计已领取宝箱奖励数
+Def_Player_Dict_FamilyTaofaBoxUnGetCnt = "FamilyTaofaBoxUnGetCnt" # 当前未领取的宝箱奖励数
+Def_Player_Dict_FamilyTaofaBoxLastTime = "FamilyTaofaBoxLastTime" # 上一次统计未领取宝箱时间戳,超过该时间戳的宝箱才可以再增加未领取
+Def_Player_Dict_FamilyTaofaBoxContribCnt = "FamilyTaofaBoxContribCnt" # 累计贡献的宝箱奖励数
+Def_Player_Dict_FamilyTaofaBoxHurt = "FamilyTaofaBoxHurt" # 宝箱奖励计算累计伤害,求余亿部分
+Def_Player_Dict_FamilyTaofaBoxHurtEx = "FamilyTaofaBoxHurtEx" # 宝箱奖励计算累计伤害,整除亿部分
+Def_Player_Dict_FamilyTaofaBoxHurtHis = "FamilyTaofaBoxHurtHis" # 历史最高累计伤害,求余亿部分
+Def_Player_Dict_FamilyTaofaBoxHurtHisEx = "FamilyTaofaBoxHurtHisEx" # 历史最高累计伤害,整除亿部分
#虚拟背包物品数据
Def_PDict_VPackItem = "VPackItem_%s_%s" # 虚拟背包物品数据, 参数(背包类型, 位置索引)
#物品个数
Def_PDict_ItemCount = "ItemCount_%s" # 存储不放在背包的物品个数, 参数(物品ID)
-
-#一次性最大充值
-Def_Player_RechargeOnce_Coin = "RechargeOnce_Coin"
-
-#悬赏任务
-Def_Player_Dict_ArrestTaskStar = "ArrestTaskStar" # 悬赏任务星级
-Def_Player_Dict_ArrestTaskData = "ArrestTaskData_%s" # 悬赏任务数据,参数索引
-Def_Player_Dict_ArrestTaskAwardRecord = "ArrestTaskAwardRecord" # 悬赏任务积分奖励领取记录
-Def_Player_Dict_ArrestTaskFinishCnt = "ArrestTaskFinishCnt" # 悬赏任务今日完成个数
-
-#封魔坛
-Def_Player_Dict_FMTDouble = "FMTDouble" # 封魔坛是否双倍
-Def_Player_Dict_FMTOldDouble = "FMTOldDouble" # 封魔坛是否曾经可以双倍
#极品白拿
Def_PDict_FreeGoodsOpenTime = "FreeGoodsOpenTime" #极品白拿开启时间
@@ -4040,7 +4049,8 @@
TriggerWay_UseSkillOverOne, # 使用技能后(多目标仅触发一次)20
TriggerWay_AttackOverDirectOne, # 直接攻击后(除dot或buff外的攻击,多目标仅触发一次)21
TriggerWay_BeAnyEffect, # 受到任意效果时(除直接攻击外的任意效果,如buff、dot、治疗、额外怒技)22
-) = range(1, 1 + 22)
+TriggerWay_BuffAddByOwner, # buff添加时(施法者触发) 23
+) = range(1, 1 + 23)
# 不加载的被动触发方式,一般用于本技能固定触发逻辑用的
TriggerWayNoLoadList = [TriggerWay_CurSkillEff, TriggerWay_CurSkillEffLst]
@@ -4056,8 +4066,8 @@
PassiveEff_ChangeHurtType = 6002 # 变更本次伤害类型
PassiveEff_ChangeHurtMulti = 6003 # 变更伤害倍值(可增可减)
PassiveEff_AddSkillPer = 6004 # 增加本次技能万分比(验证目标状态)
+PassiveEff_AddSkillPerByDeadTeammate = 6005 # 增加本次技能万分比(按队友死亡数)
PassiveEff_AddSkillPerByJob = 6006 # 增加本次技能万分比(验证目标职业)
-# 6005 增加本次技能万分比(按buff状态层数算)
PassiveEff_AddSkillTagCnt = 6007 # 增加技能目标数
PassiveEff_ImmuneControlBuff = 6008 # 生命值低于x%时免疫控制效果
PassiveEff_MustSuperHit = 6009 # 生命值低于x%时必定暴击
@@ -4066,9 +4076,13 @@
PassiveEff_AddBuffLayerMax = 6012 # 添加buff层级上限: 数值1-增加层级上限
PassiveEff_AddFinalDamPer = 6013 # 增加最终增伤(根据属性转化)
PassiveEff_AddSkillRate = 6014 # 增加技能概率
+PassiveEff_AddRicochetCnt = 6015 # 增加弹射次数
+PassiveEff_AddShieldHurtPer = 6016 # 对护盾造成伤害加成
+PassiveEff_SkillInvalid = 6017 # 使技能无效
+PassiveEff_AddAngerSkillPerByXP = 6018 # 增加怒气技能伤害(按消耗怒气值)
# 被动效果ID有触发值时就返回的
-PassiveEffHappenValueList = [PassiveEff_ChangeHurtType, PassiveEff_ImmuneControlBuff, PassiveEff_MustSuperHit]
+PassiveEffHappenValueList = [PassiveEff_ChangeHurtType, PassiveEff_ImmuneControlBuff, PassiveEff_MustSuperHit, PassiveEff_SkillInvalid]
# 被动效果ID触发值取最大值的
PassiveEffValueMaxList = [PassiveEff_ChangeHurtMulti]
# 被动效果ID触发值取最小值的
@@ -4078,6 +4092,11 @@
SkillEff_CureWayEx = 7001 # 额外治疗值计算(对CalcType、SkillPer治疗计算方式扩展): 值1-计算方式;值2-万分比
SkillEff_HurtShare = 7002 # 均摊伤害
SkillEff_ChangeTag = 7003 # 修改技能目标
+SkillEff_RandRicochetCnt = 7004 # 随机弹射次数(A~B随机,包含AB)
+SkillEff_MustHit = 7005 # 技能必命中
+SkillEff_ActionUseInvalid = 7006 # 行动时不可释放技能(可连击、反击、追击)
+SkillEff_AngerSkillNoXP = 7007 # 无论多少怒气均可释放该怒气技能
+SkillEff_UseSkillHarmSelf = 7008 # 释放技能时自残(先扣血)
(
TriggerType_BeSuperHit, # 被暴击触发技能 1
@@ -4874,7 +4893,7 @@
Def_RewardType_Activity, # 活跃度奖励 0
Def_RewardType_DailyTask, # 每日任务奖励 1
Def_RewardType_LLMJLVUp, # 历练秘笈升级 2
-Def_RewardType_XMZZWinCnt, # 仙魔之争胜利场数奖励 3
+Def_RewardType_FamilyTaofaBox, # 公会讨伐领取宝箱奖励 3
Def_RewardType_FamilyDayAward, # 仙盟每日福利奖励 4
Def_RewardType_LVAward, # 玩家等级奖励5
Def_RewardType_XBXZ, # 仙宝寻主奖励6
--
Gitblit v1.8.0