From 01a0e539b786ae0f1c46646874502367f5410aca Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 04 二月 2026 18:18:51 +0800
Subject: [PATCH] 66 【公会】基础主体-服务端(优化游戏服及跨服启动、通讯逻辑;服务器类型增加跨服中心、跨服事件、时间管理;跨服玩家在线状态、基础信息、玩家资源增减管理、发送跨服个人邮件等;跨服公会初版,修复公会成员审核、成员战力刷新等bug,增加公会名次同步;跨服公会暂未测试;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 151 +++++++++++++++++++++++++------------------------
1 files changed, 77 insertions(+), 74 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 0e906ee..7100543 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -178,10 +178,16 @@
AttrID_ReviveXPPer, # 复活怒气加成 74
AttrID_DOTBurnPer, # 灼烧增伤 75
AttrID_DOTBurnPerDef, # 灼烧减伤 76
-) = range(1, 1 + 76)
+AttrID_Guanchuan, # 贯穿 77
+AttrID_GuanchuanDef, # 抗贯穿 78
+AttrID_Zhaojia, # 招架 79
+AttrID_ZhaojiaDef, # 抗招架 80
+AttrID_AbsoluteMissRate, # 绝对闪避 81
+AttrID_AbsoluteMissRateDef, # 抗绝对闪避 82
+) = range(1, 1 + 82)
# 需要计算的武将战斗属性ID列表
-CalcBattleAttrIDList = [AttrID_Atk, AttrID_Def, AttrID_MaxHP, AttrID_StunRate, AttrID_StunRateDef,
+CalcBattleAttrIDList = [AttrID_Atk, AttrID_Def, AttrID_MaxHP, AttrID_AtkSpeed, AttrID_StunRate, AttrID_StunRateDef,
AttrID_SuperHitRate, AttrID_SuperHitRateDef, AttrID_ComboRate, AttrID_ComboRateDef,
AttrID_MissRate, AttrID_MissRateDef, AttrID_ParryRate, AttrID_ParryRateDef,
AttrID_SuckHPPer, AttrID_SuckHPPerDef, AttrID_FinalDamPer, AttrID_FinalDamPerDef,
@@ -194,6 +200,8 @@
AttrID_BatDamPer, AttrID_BatDamPerDef, AttrID_PursueDamPer, AttrID_PursueDamPerDef,
AttrID_ComboDamPer, AttrID_ComboDamPerDef, AttrID_XPRecoverPer, AttrID_PVPDamPer, AttrID_PVPDamPerDef,
AttrID_ReviveHPPer, AttrID_ReviveXPPer, AttrID_DOTBurnPer, AttrID_DOTBurnPerDef,
+ AttrID_Guanchuan, AttrID_GuanchuanDef, AttrID_Zhaojia, AttrID_ZhaojiaDef,
+ AttrID_AbsoluteMissRate, AttrID_AbsoluteMissRateDef,
]
# 基础三维属性ID列表
@@ -231,7 +239,9 @@
Def_CalcAttr_HJG, # 幻境阁 5
Def_CalcAttr_Horse, # 坐骑 6
Def_CalcAttr_Beauty, # 红颜 7
-) = range(8)
+Def_CalcAttr_Dingjunge, # 定军阁 8
+Def_CalcAttr_Mingge, # 命格 9
+) = range(10)
CalcAttrName = {
Def_CalcAttr_LV:"主公等级",
@@ -242,6 +252,8 @@
Def_CalcAttr_HJG:"幻境阁",
Def_CalcAttr_Horse:"坐骑",
Def_CalcAttr_Beauty:"红颜",
+ Def_CalcAttr_Dingjunge:"定军阁",
+ Def_CalcAttr_Mingge:"命格",
}
##-----------------------------------------------------------------------------------------------
@@ -460,42 +472,9 @@
#---------------------------------------------------------------------------
Def_ItemCount_Max = 2000000000 # 物品最大叠加上限
-#写死的物品ID都放这边
-Def_ItemID_PetSoul = -1 #宠物满魂
-Def_ItemID_PetDoubleExp = -1 #宠物双倍
-Def_ItemID_CompoundJiePo = -1 #合成材料附加物品: 结魄
-Def_ItemID_FineSoulGadget = -1 #精魄合成保护符ID
-Def_ItemID_LongSaleItem = -1 #远程贩售道具ID
-Def_ItemID_ArchangelWeapon = 4004 # 大天使的武器
-Def_ItemID_PetData = 4171 # 宠物数据物品ID
-Def_ItemID_RealmSit = 4504 #境界打坐消耗物品ID
-Def_ItemID_VIPExperience = 985 # VIP体验卡
# 直接转换为对应数值的物品ID列表
-Def_ItemID_GoldMoney = 1 # 直接给仙玉/元宝
-Def_ItemID_SilverMoney = 22 # 直接给铜钱
-Def_ItemID_SP = 29 # 直接给sp
-Def_ItemID_GoldPaper = 30 # 直接给绑玉/灵石
-Def_ItemID_RealmPoint = 24 # 直接给修行点
-Def_ItemID_BossReborn = 21 # 直接给boss复活点
-Def_ItemID_Ysog = 4306 # 直接给符印融合石
-Def_ItemID_SoulDust = 700 # 直接给魂尘
-Def_ItemID_SoulSplinters = 701 # 直接给聚魂碎片
-Def_ItemID_SoulCore = 702 # 直接给核心环
-Def_ItemID_Honor = 2141 # 直接给荣誉
-Def_ItemID_FuncSysPrivilege = 894 # 直接给功能特权令
-Def_ItemID_FCPartyPoint = 718 # 直接给仙界盛典嗨点
-Def_ItemID_BTGMPoint = 450 # 直接给GM令
-Def_ItemID_GuShenMoney = 520 # 直接给古神币
-Def_ItemID_GongdePoint = 530 # 直接给功德点
-Def_ItemID_FamilyFlagWarPoint = 540 # 直接给万界积分
-Def_ItemID_TongTianPoint = 720 # 直接给通天令经验点
-Def_TransformItemIDList = [Def_ItemID_SP, Def_ItemID_GoldPaper,
- Def_ItemID_RealmPoint, Def_ItemID_SilverMoney, Def_ItemID_BossReborn, Def_ItemID_Ysog,
- Def_ItemID_SoulDust, Def_ItemID_SoulSplinters, Def_ItemID_SoulCore, Def_ItemID_Honor, Def_ItemID_GoldMoney,
- Def_ItemID_FuncSysPrivilege, Def_ItemID_FCPartyPoint, Def_ItemID_BTGMPoint, Def_ItemID_GuShenMoney,
- Def_ItemID_GongdePoint, Def_ItemID_TongTianPoint,
- Def_ItemID_FamilyFlagWarPoint]
+Def_TransformItemIDList = []
#---------------------------------------------------------------------
#写死的物品类型都放这边
Def_ItemType_All = -1 #所有类型
@@ -587,6 +566,19 @@
Def_ItemType_Hero = 150 # 武将英雄
+Def_ItemType_GY_Taiyang = 201 # 太阳 注意修改装备列表配置 Def_MGGuayuType
+Def_ItemType_GY_Shaoyang = 202 # 少阳
+Def_ItemType_GY_Taiyin = 203 # 太阴
+Def_ItemType_GY_Shaoyin = 204 # 少阴
+Def_ItemType_GY_Qian = 205 # 乾(qián):代表天,位于西北方
+Def_ItemType_GY_Kun = 206 # 坤(kūn):代表地,位于西南方。
+Def_ItemType_GY_Zhen = 207 # 震(zhèn):代表雷,位于正东方。
+Def_ItemType_GY_Xun = 208 # 巽(xùn):代表风,位于东南方。
+Def_ItemType_GY_Kan = 209 # 坎(kǎn):代表水,位于正北方。
+Def_ItemType_GY_Li = 210 # 离(lí):代表火,位于正南方。
+Def_ItemType_GY_Gen = 211 # 艮(gèn):代表山,位于东北方。
+Def_ItemType_GY_Dui = 212 # 兑(duì):代表泽,位于正西方。
+
#虚拟背包最大格子数 功能配置表对应的key
Def_VPackCnt_Dict = {
#ShareDefine.rptRune:'RunePackageNum',
@@ -630,41 +622,22 @@
#---------------------------------------------------------------------
#写死的物品效果ID都放这边------请按数值顺序存放
-Def_Effect_GivePlayerMoneySilver = 201 #给人物金钱 铜钱道具效果ID
-Def_Effect_GivePlayerMoneyGift = 202 #给人物金钱 绑定仙玉道具效果ID
-Def_Effect_GivePlayerMoneyGold = 203 #给人物金钱 仙玉道具效果ID
-Def_Effect_AddDienstgrad = 204 #使用物品获得称号
-#205 #使用道具给予真气
-Def_Effect_ItemGiveFamilyContribution = 209 #使用道具给予仙盟贡献
Def_Effect_ItemAddExp = 213 #给经验道具
Def_Effect_ItemAddLV = 214 #直接升级道具
Def_Effect_ItemAddExpByLV = 215 #给经验道具 XX级前,所加经验随等级增加而增加,XX级后按XX级算
-Def_Effect_AppointItem = 220 #定制物品
-Def_Effect_EquipStone = 225 #镶嵌宝石效果;A值-宝石镶嵌类型,B值-宝石等级,C值-下一级宝石ID
Def_Effect_Reborn = 227 #复活物品(还阳咒)效果ID
Def_Effect_PrizeCoin = 228 #奖励充值点券; A值点券;B值奖励点券
#229 #增加VIP经验;A值经验点
#230 #重置boss击杀疲劳;A值重置的boss疲劳类型
-Def_Effect_GivePlayerSilverPaper = 1915 #给人物金钱银票(恶魔精华)道具效果ID
Def_Effect_ItemSpeak = 2700 #小喇叭效果ID
-#Def_Effect_CleanGuilt = 2812 # 洗红名
-Def_Effect_ResetAttrPoint = 231 # 洗点
Def_Effect_AddFBCnt = 233 # 增加副本可进入次数,A值副本ID,B值是否自动使用
#234 # 增加BOSS可击杀次数
Def_Effect_DogzEquipPlusExp = 235 # 神兽强化材料经验效果,A值基础经验,B值双倍强化消耗仙玉
#236 # 增加法宝升星经验 A值法宝ID B值X经验
Def_Effect_ChatBubbleBox = 237 # 激活聊天气泡框,A值气泡框ID
-Def_Effect_ItemGiveRealmPoint = 238 #使用道具给予修行点
-Def_Effect_ItemGiveSoulDust = 239 # 使用道具给予魂尘
-Def_Effect_ItemGiveSoulSplinters = 240 # 使用道具给予聚魂碎片
-Def_Effect_ItemGiveSoulCore = 241 #使用道具给予核心环
-Def_Effect_ItemGiveHonor = 242 #使用道具给予荣誉
-Def_Effect_ItemGiveWeekPartyPoint = 245 #使用道具给予七日巡礼积分
-Def_Effect_ItemGiveWeekPartyPoint1 = 246 #使用道具给予节日巡礼积分
#251 #增加聚灵效率
#252 #触发任务
#253 #骑宠觉醒值
-Def_Effect_ItemGiveTreasureScore = 254 #使用道具给予寻宝积分
#256 #VIP等级直升卡 直接升到VIPx级,只加经验,享受VIP特权 效果值A: vip等级 效果值B: 领取是否默认直接使用
#257 #增加竞技场挑战次数,A值为增加次数
Def_Effect_ItemGiveMoney = 264 #通用给货币道具,A值数量,B值货币类型
@@ -684,12 +657,7 @@
#放入背包自动使用的物品效果ID
AutoUseItemEffectIDList = [Def_Effect_ItemCount, Def_Effect_AddActivity]
-#----以下未使用或代码依然存在的---
-Def_Effect_ItemGiveRuneJH = 1925 #使用道具给予符印精华
-Def_Effect_ItemGiveRuneSplinters = 1926 #使用道具给予符印碎片
#---------------------------------------------------------------------
-Def_Max_Update_Talent_Time = 3 #最大使用造化丹次数
-
#写死的物品效果都放这边
#立刻恢复%d的HP(单次恢复)
@@ -916,6 +884,7 @@
AfterLogic_DelBuff = "DelBuff"
AfterLogic_AddBuff = "AddBuff"
AfterLogic_SyncBuff = "SyncBuff"
+AfterLogic_TriggerAddBuff = "TriggerAddBuff" # 后置处理添加buff后的被动触发
#伤害飘血类型
(
@@ -934,7 +903,10 @@
HurtAtkType_HarmSelf, # 自残 12
HurtAtkType_CaorenProtect, # 本次伤害有受曹仁防护标记 13
HurtAtkType_IgnoreShield, # 无视承伤盾 14
-) = range(15)
+HurtAtkType_Guanchuan, # 贯穿 15
+HurtAtkType_Zhaojia, # 招架 16
+HurtAtkType_AbsoluteMiss, # 绝对闪避 17
+) = range(18)
#伤害类型
(
@@ -971,6 +943,9 @@
#主线装备类型
Def_MainEquipType = range(Def_ItemType_retWeapon, Def_ItemType_retAmulet + 1)
+
+#命格卦玉类型
+Def_MGGuayuType = range(Def_ItemType_GY_Taiyang, Def_ItemType_GY_Dui + 1)
#神兽装备类型
Def_DogzEquiipType = xrange(Def_ItemType_DogzEquipHorn, Def_ItemType_DogzEquipScute + 1)
@@ -1241,6 +1216,8 @@
#ShareDefine.rptDogzEquip,
#ShareDefine.rptGarbage,
ShareDefine.rptHero,
+ ShareDefine.rptMGGuayu,
+ ShareDefine.rptMGTuiyan,
]
#装备可强化背包列表
@@ -1337,6 +1314,15 @@
# @param posNum: 在阵容中的站位 1 ~ n
# @return: 1 ~ 总行数
return (posNum - 1) / TurnFightCols + 1
+
+# 回合战斗站位定义, 1~20 以内为战斗武将固定位置
+TFPosNum_Mingge = 99 # 命格固定站位
+TFPosNum_Lingshou = 101 # 灵兽起始站位 101~xxx
+
+# 战斗对象类型,根据 PosNum 区分
+BatObjType_BatHero = 1 # 主战斗武将
+BatObjType_Mingge = 2 # 命格
+BatObjType_Lingshou = 3 # 灵兽
# 性别
BatObjSex_Male = 1 # 男
@@ -1518,7 +1504,7 @@
}
# 伤害型技能
-Def_HurtSkill_List = [Def_SkillType_Atk, Def_SkillType_LstPlsBuffAtk, Def_SkillType_PassiveLstPlsBuffAtk]
+Def_HurtSkill_List = [Def_SkillType_Atk, Def_SkillType_AtkEx, Def_SkillType_LstPlsBuffAtk, Def_SkillType_PassiveLstPlsBuffAtk]
#持续型技能列表
@@ -1909,6 +1895,11 @@
PlayerWinMapIDList = [Def_FBMapID_Tianzi]
#需要汇报中心副本过关进度的地图
ReportCenterMapIDList = [Def_FBMapID_Zhanchui, Def_FBMapID_Dingjunge]
+#需要阵容战斗属性单独专用的地图 - 一般是有地图专有属性的,仅该功能战斗有效,用的是专项的主线阵容,战力独立计算,不影响通用主线阵容战力
+ExclusiveBatAttrMapIDList = [Def_FBMapID_Dingjunge]
+#地图功能专用预设方案,如果没有配置的功能则默认使用主线方案
+MapAtkBatPresetTypeDict = {}
+MapDefBatPresetTypeDict = {Def_FBMapID_ArenaBattle:ShareDefine.BatPreset_ArenaDef}
#注册上传跨服服务器数据后直接进入跨服服务器的地图
RegisterEnter_CrossServerMapIDList = []
@@ -2046,14 +2037,6 @@
Map_FBDict_PrevFBTimeType = "Map_FBDict_PrevFBTimeType" # 上一个副本时间类型
#因GetPropertyID值会受副本类型影响,如组队副本,故自定义副本自己的属性标识字典
Map_FBDict_PropertyMark = "Map_FBDict_PropertyMark" # 副本属性标识
-
-#---战场区域福利---
-Map_FBDict_LastAreaRewardTick = "LastAreaRewardTick" # 副本上次战场区域福利刷新时间
-Map_Player_AreaReward_GetExp = "AreaAward_Exp%s" # 玩家战场区域福利-获得经验
-Map_Player_AreaReward_GetExpPoint = "AreaAward_ExpPoint%s" # 玩家战场区域福利-累计获得经验点
-Map_Player_AreaReward_GetZhenQiTotal = "AreaAward_SP%s" # 玩家战场区域福利-累计获得真气
-Map_Player_AreaReward_GetTechPoint = "AreaAward_TechPoint%s" # 玩家战场区域福利-累计获得科技点
-Map_Player_AreaReward_GetCnt = "AreaAward_GetCnt%s" # 玩家战场区域福利-累计获得次数
#---地图NPC---
Map_NPC_ActBossLastRebornSign = 'ActBossRebornSign_%s' # 活动boss上次复活标记,参数为刷新标识点
@@ -2468,6 +2451,7 @@
TYPE_Time_Format = "%Y-%m-%d %H:%M:%S"
TYPE_Time_Format_Day = "%Y-%m-%d"
TYPE_Time_Format_YmdHMS = "%Y%m%d%H%M%S"
+TYPE_Time_Format_YmdH = "%Y%m%d%H"
#---------------------------------------------------------------------
#请求类型(需要和GameServer中的一致)
@@ -3192,6 +3176,7 @@
Def_PDict_OnDayEx = "OnDayEx" # 特殊时间点凌晨X点过天
Def_PDict_OnWeekEx = "OnWeekEx" # 特殊时间点凌晨X点过周
Def_PDict_OnMonthEx = "OnMonthEx" # 特殊时间点凌晨X点过月
+Def_PDict_OnCrossEvent = "OnCrossEvent" # 跨服过x事件值, yyyyMMddhh
Def_Player_Dict_PlayerFromPID = "PlayerFromPID" # pid
Def_Player_Dict_Account_Type = "account_type" # account_type
Def_Player_Dict_FirstLogin = "FirstLogin" # 首登标记 0-未首登; 1-首登过
@@ -3421,7 +3406,7 @@
Def_Player_Dict_FamilyTaofaAnger = "FamilyTaofaAnger" # 当前怒气
Def_Player_Dict_FamilyTaofaBoxTotalGetCnt = "FamilyTaofaBoxTotalGetCnt" # 累计已领取宝箱奖励数
Def_Player_Dict_FamilyTaofaBoxUnGetCnt = "FamilyTaofaBoxUnGetCnt" # 当前未领取的宝箱奖励数
-Def_Player_Dict_FamilyTaofaBoxLastTime = "FamilyTaofaBoxLastTime" # 上一次统计未领取宝箱时间戳,超过该时间戳的宝箱才可以再增加未领取
+Def_Player_Dict_FamilyTaofaLeaveGetCnt = "FamilyTaofaLeaveGetCnt" # 上一次离开公会时累计领取宝箱数
Def_Player_Dict_FamilyTaofaBoxContribCnt = "FamilyTaofaBoxContribCnt" # 累计贡献的宝箱奖励数
Def_Player_Dict_FamilyTaofaBoxHurt = "FamilyTaofaBoxHurt" # 宝箱奖励计算累计伤害,求余亿部分
Def_Player_Dict_FamilyTaofaBoxHurtEx = "FamilyTaofaBoxHurtEx" # 宝箱奖励计算累计伤害,整除亿部分
@@ -3877,6 +3862,7 @@
#主线
Def_PDict_UnXiantaoCntExp = "UnXiantaoCntExp" # 累计未结算经验的战锤数
Def_PDict_UnXiantaoCntEquip = "UnXiantaoCntEquip" # 累计未结算装备掉落的战锤数
+Def_PDict_LastColorEquipLucky = "LastColorEquipLucky" # 最后一档品质必出幸运值
Def_PDict_UnXiantaoCntBooty = "UnXiantaoCntBooty_%s" # 累计未结算战利品掉落的战锤数,参数(itemID)
Def_PDict_BootyDropToday = "BootyDropToday_%s" # 今日已累计掉落战利品数量,参数(itemID)
Def_PDict_AppointDropEquipCnt = "AppointDropEquipCnt" # 定制掉落装备掉落第x次,只记录到配置的最高次数
@@ -3895,6 +3881,16 @@
Def_PDict_DJGUnSelectCnt = "DJGUnSelectCnt" # 还有几个未选择的效果
Def_PDict_DJGEffAuto = "DJGEffAuto" # 是否自动选择效果
Def_PDict_DJGEffSet = "DJGEffSet_%s" # 预设优先选择属性ID,参数(优先index)
+
+#命格
+Def_PDict_MGGanwuLV = "MGGanwuLV" # 感悟等级
+Def_PDict_MGGanwuExp = "MGGanwuExp" # 当前感悟等级对应的经验
+Def_PDict_MGLingying = "MGLingying" # 当前灵应值
+
+#预设
+Def_PDict_PresetState = "PresetState_%s" # 预设解锁状态,按二进制位存储是否已解锁,参数(功能预设类型)
+Def_PDict_PresetBatID = "PresetBatID_%s" # 战斗功能使用的战斗预设方案ID,参数(战斗功能类型)
+Def_PDict_PresetFuncID = "PresetFuncID_%s_%s" # 某个战斗预设方案下某个功能预设的方案ID,参数(战斗预设ID, 功能类型)
#-------------------------------------------------------------------------------
@@ -4057,7 +4053,10 @@
TriggerWay_BeSuckHP, # 被吸血时 56
TriggerWay_SuckHPOne, # 吸血时(多目标仅触发一次) 57
TriggerWay_EnemyBeControlledHard, # 敌方受控时(硬控) 58
-) = range(1, 1 + 58)
+TriggerWay_PursueAtk, # 追击直接攻击时 59
+TriggerWay_Frozen, # 冰冻目标时 60
+TriggerWay_AddDOTBuff, # 附加持续伤害buff时 61
+) = range(1, 1 + 61)
# 不加载的被动触发方式,一般用于本技能固定触发逻辑用的
TriggerWayNoLoadList = [TriggerWay_CurSkillEff, TriggerWay_CurSkillEffLst]
@@ -4071,6 +4070,7 @@
TriggerSrc_BuffSelf = 4 # 本buff有效
# 被动效果ID,属性类的直接使用属性ID当做效果ID
+PassiveEff_EnergySkill = 5500 # 触发释放技能(按累计能量达到时释放)
PassiveEff_AddBuffLayerByWeight = 6001 # 根据权重随机添加buff层数 数值1-[[权重,层级], ...]
PassiveEff_ChangeHurtType = 6002 # 变更本次伤害类型(可验证目标状态)
PassiveEff_ChangeHurtMulti = 6003 # 变更伤害倍值(可增可减)
@@ -4129,6 +4129,7 @@
SkillEff_SkillUseCntLimit = 7009 # 限制技能最多触发次数
SkillEff_UseSkillStealBuff = 7010 # 释放技能前偷取buff
SkillEff_ReviveNoUse = 7011 # 没有复活目标时释放其他技能
+SkillEff_LearnSkillEx = 7012 # 额外学习技能(用于拆分完全独立的技能,视为已学习)
(
TriggerType_BeSuperHit, # 被暴击触发技能 1
@@ -4753,7 +4754,9 @@
Def_SkillFuncType_TurnNormaSkill, #1 普攻技能
Def_SkillFuncType_AngerSkill, #2 怒气技能
Def_SkillFuncType_PotentialSkill, #3 潜能技能
-) = range(4)
+Def_SkillFuncType_4, #4 觉醒技能
+Def_SkillFuncType_MinggeSkill, #5 命格技能
+) = range(6)
# MMO项目 - 先保留,重新定义从1000开始,后续可陆续删除
(Def_SkillFuncType_Common, #0为通用技能
--
Gitblit v1.8.0