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