From 14b330f7dd90ab09f2a7a00c2bcf3a8008e0abd3 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 19 八月 2025 16:13:06 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(删除4012效果)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py |  130 +++++++++++++++++++++++++++++--------------
 1 files changed, 87 insertions(+), 43 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index c0cbe0f..4e35cc3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -184,8 +184,6 @@
                }
 
 # 属性ID对应0418刷新类型 {属性ID:[刷新同步类型, 是否支持超20亿的大数值], ...}
-# 卡牌项目玩家/主公属性仅为中间层属性,并非最终属性,最终属性体现在卡牌上,暂定全部前端自己算
-# 所以仅配置战斗场景需要同步的属性即可
 CDBRefresh_AttrIDDict = {
                          AttrID_MaxHP:[IPY_PlayerDefine.CDBPlayerRefresh_MaxHP, 1],
                          AttrID_HP:[IPY_PlayerDefine.CDBPlayerRefresh_HP, 1],
@@ -573,7 +571,7 @@
 
 def GetItemPackType(itemData, defaultPack=IPY_GameWorld.rptItem):
     ## 获取物品对应存放的默认背包类型
-    if defaultPack in [ShareDefine.rptTreasure, ShareDefine.rptTempItem]:
+    if defaultPack in [ShareDefine.rptTreasure, ShareDefine.rptTempItem, IPY_GameWorld.rptIdentify]:
         #寻宝背包、临时背包不做处理
         return defaultPack
     import IpyGameDataPY
@@ -951,6 +949,20 @@
 
 #伤害类型
 (
+HurtType_Fail,              # 失败 - 如概率没有触发 0
+HurtType_Normal,            # 伤害 1
+HurtTYpe_Recovery,          # 回血 2
+HurtType_3,
+HurtType_4,
+HurtType_Parry,             # 格挡 5
+HurtType_IgnoreDef,         # 无视防御 6
+HurtType_SuperHit,          # 暴击 7
+HurtType_8,
+HurtType_Miss,              # 闪避 9
+) = range(10)
+
+#伤害类型
+(
 Def_HurtType_Normal,         # 普通伤害 1
 Def_HurtTYpe_Recovery,       # 回复 2
 Def_HurtType_BounceHurt,     # 反弹伤害 3
@@ -969,7 +981,7 @@
 Def_HurtType_ThumpHit,     # 重击 16
 Def_HurtType_Yinji,     # 印记 17
 Def_HurtType_Burn,     # 灼烧 18
-) = range(1, 19)
+) = range(1001, 1001 + 18)
 #Def_HurtType_SuckBlood,      # 吸血 
 
 (
@@ -1294,11 +1306,9 @@
 Def_CureTypeList = (
 Def_Cure_Attack, # 攻击 0
 Def_Cure_MaxHP, # 最大生命值 1
-Def_Cure_PNE, # 智力 2
-Def_Cure_PHY, # 敏捷 3
-Def_Cure_HurtValue, # 伤害值 4
-Def_Cure_TagMaxHP, # 目标最大生命值 5
-) = range(6)
+Def_Cure_HurtValue, # 伤害值 2
+Def_Cure_TagMaxHP, # 目标最大生命值 3
+) = range(4)
 
 #回魔类型(影响公式参数)
 Def_RestoreTypeList = (
@@ -1319,6 +1329,24 @@
 Def_Skill_HappenState_LuckyHit = 0x0004  # 必会心一击
 Def_Skill_HappenState_ThumpHit = 0x0008  # 必重击
 
+# 技能目标 - 瞄准范围
+(
+SkillTagAim_All, # 全部 0
+SkillTagAim_Relative, # 对位位置 1
+SkillTagAim_FrontRow, # 前排  2
+SkillTagAim_BackRow, # 后排  3
+SkillTagAim_Vertical, # 竖排/纵排 4
+SkillTagAim_Self, # 自己 5
+SkillTagAim_MainSkill, # 继承主技能目标 6
+) = range(7)
+
+# 技能目标 - 细分
+(
+SkillTagAffect_None, # 无  0
+SkillTagAffect_HPLowest, # 血量最低 1
+SkillTagAffect_HPHighest, # 血量最高 2
+SkillTagAffect_Death, # 死亡单位 3
+) = range(4)
 
 #技能施法目标
 Def_UseSkillAim_Type = 3
@@ -1827,10 +1855,9 @@
 Def_NstNull, Def_NstMoving, Def_NstDead, Def_NstAttack = range(4)
 
 #-------------------------------#副本相关#------------------------
-# 主线小怪
-Def_FBMapID_Main = 1
-# 主线Boss
-Def_FBMapID_MainBoss = 2
+
+Def_FBMapID_Main = 1 # 主线小怪
+Def_FBMapID_MainBoss = 2 # 主线Boss
 
 #创角新手村地图ID列表
 Def_CreatRoleMapIDList = [10000]
@@ -2278,6 +2305,10 @@
 DropOwnerType_Contend, # 争夺 8 第一个攻击的获得归属,击杀当前归属者的玩家成为新归属者
 DropOwnerType_RankHurtPlayer, # 个人伤血排行奖励归属 9 根据玩家个人伤血排行给奖励,伤血不重置
 ) = range(10)
+
+#阵营
+Def_FactionA = 1
+Def_FactionB = 2
 
 #------------------------------------------------
 #技能类型
@@ -3022,7 +3053,8 @@
 TurnBattleType_Normal, # 常规攻击
 TurnBattleType_Combo, # 连击
 TurnBattleType_AtkBack, # 反击
-) = range(3)
+TurnBattleType_Pursue , # 追击
+) = range(4)
 
 Def_PerTurnTick = 1000 # 每回合等同于常规tick时长
 
@@ -3101,6 +3133,22 @@
 Def_NPC_Dict_TimeLostHPPlayerCount = 'TimeLostHPPlayerCount' # 按时间掉血有效人数
 Def_NPC_Dict_TimeLostHPFightPower = 'TimeLostHPFightPower' # 按时间掉血战力
 Def_NPC_Dict_TimeLostHPFightPowerEx = 'TimeLostHPFightPowerEx' # 按时间掉血战力
+
+#玩家状态定义,不能超过31个,如超过,需扩展多个key支持
+BatObjStateList = (
+    BatObjState_Normal, # 无 0
+    BatObjState_Frozen, # 冰冻 1
+    BatObjState_Cold, # 减速/寒冷 2
+    BatObjState_Stun, # 眩晕 3
+    BatObjState_Burn, # 灼烧 4
+    BatObjState_Poison, # 中毒 5
+    BatObjState_Bleeding, # 流血 6
+    BatObjState_EasyHurt, # 易伤 7
+    BatObjState_Wudi, # 无敌 8
+    BatObjState_Sneer, # 嘲讽 9
+    BatObjState_LimitSkill, # 沉默 10
+    BatObjState_LimitAddHP, # 禁疗 11
+) = range(12)
 
 #玩家状态定义,不能超过31个,如超过,需扩展多个key支持
 Def_PlayerStateList = (
@@ -3541,9 +3589,6 @@
 Def_PDict_SplitExpLVCnt = "SplitExpLVCnt_%s"  # 单位等级经验已拆分过的等级数, 参数为实际等级
 
 Def_PDict_IsAddReviveTired = "IsAddReviveTired"  # 死亡是否增加复活疲劳
-
-Def_PDict_ComposeMustSuccess = "ComposeMustSuccess_%s"  # 前X次合成必定成功,参数(合成归组)
-Def_PDict_FirstSuccMakeJobItem = "FirstSuccMakeJobItem_%s"  # 首次合成成功给本职业物品记录,参数为(合成ID)
 
 Def_PDict_DownloadAwardState = "DownloadAwardState"  # 分包包下载奖励状态 0-未领 >0-已领奖励编号
 Def_PDict_DownloadPatchAward = "DownloadPatchAward"  # 更新包下载奖励状态 0-未领 >0-已领奖励编号
@@ -4088,11 +4133,6 @@
 Def_PDict_TTL_TaskAwardRecord = "TTL_TaskAwardRecord_%s" # 通天任务领奖记录,参数(key编号),按索引位存储0-未领,1-已领
 Def_PDict_TTL_DailyTaskPointToday = "TTL_DailyTaskPointToday" # 每日通天任务每日可获得积分点上限
 
-# 大师 Def_PDictType_GreatMaster
-Def_PDict_Master_Exp = "Master_Exp" # 当前大师经验
-Def_PDict_Master_ExpPoint = "Master_ExpPoint" # 当前大师经验点
-Def_PDict_Master_FreeSkillPoint = "Master_FreeSkillPoint" # 当前剩余大师技能点
-
 # 跨服竞技场
 Def_PDict_CrossPK_TotalScore = "CrossPK_TotalScore" # 当前总积分
 Def_PDict_CrossPK_DanLV = "CrossPK_DanLV" # 当前段位
@@ -4292,10 +4332,12 @@
 #武将
 Def_PDict_HeroSkin = "HeroSkin_%s" # 武将皮肤解锁状态,按皮肤索引二进制存储,参数(武将ID)
 Def_PDict_HeroBook = "HeroBook_%s" # 武将图鉴激活等级,参数(武将ID) cccbbba a-初始激活状态1-英雄激活,2-初始图鉴激活; bbb-存星级图鉴激活等级;ccc-存突破图鉴激活等级
+Def_PDict_HeroAwakeRebirthCnt = "HeroAwakeRebirthCnt" # 已觉醒过的武将今日已重生次数,共享次数
 
 #主线
 Def_PDict_UnXiantaoCntExp = "UnXiantaoCntExp" # 累计未结算经验的战锤数
-Def_PDict_UnXiantaoCntEquip = "UnXiantaoCntEquip" # 累计未结算掉落的战锤数
+Def_PDict_UnXiantaoCntEquip = "UnXiantaoCntEquip" # 累计未结算装备掉落的战锤数
+Def_PDict_UnXiantaoCntBooty = "UnXiantaoCntBooty_%s" # 累计未结算战利品掉落的战锤数,参数(itemID)
 Def_PDict_BootyDropToday = "BootyDropToday_%s" # 今日已累计掉落战利品数量,参数(itemID)
 
 #-------------------------------------------------------------------------------
@@ -4403,6 +4445,17 @@
 ) = range(66)
 
 #-------------------------------------------------------------------------------
+
+# 被动触发方式
+(
+TriggerWay_FightStart, # 战斗开始时    1
+TriggerWay_BigTurnStart, # 大回合开始时    2
+TriggerWay_BigTurnEnd, # 大回合结束时    3
+TriggerWay_HeroTurnStart, # 武将回合开始时    4
+TriggerWay_HeroTurnEnd, # 武将回合开始时    5
+TriggerWay_HeroActionStart, # 武将行动前    6
+TriggerWay_HeroActionEnd, # 武将行动后    7
+) = range(1, 1 + 7)
 
 (
 TriggerType_BeSuperHit, # 被暴击触发技能 1
@@ -5103,6 +5156,16 @@
 ) = range(27)
 
 
+# 回合卡牌
+(
+Def_SkillFuncType_Common, #0为通用技能
+Def_SkillFuncType_TurnNormaSkill,  #1 普攻技能
+Def_SkillFuncType_AngerSkill,  #2 怒气技能
+Def_SkillFuncType_PotentialSkill,  #3 潜能技能
+Def_SkillFuncType_AtkbackSkill,  #4 反击技能
+) = range(5)
+
+# MMO项目 - 先保留,重新定义从1000开始,后续可陆续删除
 (Def_SkillFuncType_Common, #0为通用技能
 Def_SkillFuncType_FbSkill, #1为法宝功能获得的主动技能
 Def_SkillFuncType_FbPassiveSkill, #2为法宝功能获得的被动技能
@@ -5126,8 +5189,7 @@
 Def_SkillFuncType_ShentongSkill,     #20 神通技能
 Def_SkillFuncType_ElfSkill,     #21 精怪技能
 Def_SkillFuncType_GatherTheSoul,     #22 聚魂技能
-Def_SkillFuncType_TurnNormaSkill,  #23 回合普攻技能
-) = range(24)
+) = range(1000, 1000 + 23)
 
 # 受技能效果完全影响的怪, 对应 Def_BattleRelationType_CommNoBoss
 Def_SkillAttack_NPCIsBoss = [ Def_NPCType_Ogre_Normal     ,  #平凡小怪 0    # c++ 定义为普通NPC视野刷新
@@ -5154,24 +5216,6 @@
 ExpRateLimitType_Recover, # 资源找回
 ExpRateLimitType_Sweep, # 扫荡
 ) = range(2)
-
-# 技能功能类对应战斗力模块
-Def_SkillFuncType_MFPType={
-                           Def_SkillFuncType_FbSkill:ShareDefine.Def_MFPType_MagicWeapon1,
-                           Def_SkillFuncType_FbPassiveSkill:ShareDefine.Def_MFPType_MagicWeapon2,
-                           Def_SkillFuncType_FbSPSkill:ShareDefine.Def_MFPType_MagicWeapon1,
-                           Def_SkillFuncType_GiftSkill:ShareDefine.Def_MFPType_Role,
-                           
-                           Def_SkillFuncType_HorseSkill:ShareDefine.Def_MFPType_Horse,
-                           Def_SkillFuncType_PetSkill:ShareDefine.Def_MFPType_Pet,
-                           Def_SkillFuncType_PetOwnerSkill:ShareDefine.Def_MFPType_Pet,
-                           Def_SkillFuncType_GWSkill:ShareDefine.Def_MFPType_Prestige,
-                           Def_SkillFuncType_SuiteSkill:ShareDefine.Def_MFPType_Equip,
-                           Def_SkillFuncType_TitleSkill:ShareDefine.Def_MFPType_Dienstgrad,
-                           Def_SkillFuncType_LianTiSkill:ShareDefine.Def_MFPType_LianTi,
-                           Def_SkillFuncType_ShentongSkill:ShareDefine.Def_MFPType_Shentong,
-                           }
-
 
 # 投资理财类型,和前端对应,从7开始
 InvestTypeList = (

--
Gitblit v1.8.0