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/ShareDefine.py |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 52 insertions(+), 6 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
index d504b88..650e9f8 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -33,6 +33,7 @@
 Def_MixServerDay = 'MixServerDay' #服务器已经合服多少天
 Def_IsMixServerInitOK = 'IsMixServerInitOK' #服务器合服首次启动OK
 Def_LastMixServerDay = 'LastMixServerDay' #上次合服时的开服天数
+Def_CrossCenterEvent = 'CrossCenterEvent' # 跨服中心事件值
 #首次开服时间,注意不要用该日期做开服天相关的功能逻辑,如果要用开服天,请用 Def_ServerDay
 ''' 原因: 
 因为目前开服天的逻辑大部分是用 Def_ServerDay,当出现服务器宕机超过24小时时,就会导致 Def_ServerDay 与 Def_InitOpenServerTime 不对应
@@ -42,9 +43,9 @@
 Def_InitOpenServerTime = 'InitOpenServerTime'
 Def_SetOpenServerTime = 'SetOpenServerTime' # GM工具预定的开服时间
 
-
+Def_FamilyCrossState = 'FamilyCrossState' # 本服公会跨服状态, 0-未跨服;1-已跨服
+Def_FamilyTransDataTime = 'FamilyTransDataTime' # 本服公会首次跨服互通数据开始传输时间戳,不为0代表传输数据中
 Def_OSAAwardState = 'OSAAwardState' #开服冲榜活动结算状态
-# ------------------------- WorldKey ------------------------- 
 
 #---奇迹, 职业枚举定义---
 (
@@ -988,7 +989,7 @@
 
 #家族行为类型 在GameServer.ChConfig.ActionTypeSaveCnt 中配置最高存储条数
 Def_ActionTypeList = (
-                      Def_ActionType_FamilyData, #仙盟额外记录信息0
+                      Def_ActionType_0,
                       Def_ActionType_1,
                       Def_ActionType_2,
                       Def_ActionType_FamilyAdd,    #申请进入家族3
@@ -1062,11 +1063,19 @@
 CampType_Evil,       #邪恶(与 Def_ID2Win 一致)
 ] = range(3)
 
-# json里的配表 服务器类型(0主服,1子服,2跨服,3战斗服)]
+# serverJosn里配置索引 ServersConfig.json目前配置规则{SeverID:[GroupName,MapID,服务器类型(0主服,1子服,2跨服)], ...}
+(
+serverCfgIndex_GroupName, # 所属 GroupName
+serverCfgIndex_MapID, # 服务器对应的地图ID
+serverCfgIndex_ServerType, # 服务器类型
+) = range(3)
+
+# json里的配表 服务器类型(0主服,1子服,2跨服,3战斗服,4跨服中心)]
 serverType_Main = 0 # 0主服
 serverType_Child = 1 # 1子服
 serverType_Cross = 2 # 2跨服
 serverType_Battle = 3 # 3战斗服
+serverType_CrossCenter = 4 # 4跨服中心,只允许最多1台
 
 # dirType //0全广播,1通知主服务器排除合服子服,2通知服务器包含合服子服, 3通知跨服服务器 ,4通知战斗服务器
 dirType_All = 0 # 0全广播
@@ -1074,10 +1083,47 @@
 dirType_Child = 2 # 2通知服务器包含合服子服
 dirType_Cross = 3 # 3通知跨服服务器
 dirType_Battle = 4 # 4通知战斗服务器
+dirType_MainAndCross = 5 # 通知主服务器+跨服
+
+# 服务器间连接状态
+(
+ssConn_Unknown, # 未知 0
+ssConn_Normal, # 正常连接 1
+ssConn_Disconnected, # 断开 2
+) = range(3)
 
 # 服务器间的信息定义
-SSMsg_BattleRequest = "SS_BattleRequest"
-SSMsg_BattleResult = "SS_BattleResult"
+# 服务器类型简写: C - 跨服/跨服中心; CC - 跨服中心;S - 游戏服; B - 战斗服
+
+# 跨服中心 -> 其他跨服
+CC2C_FamilyCrossCfg = "CC2C_FamilyCrossCfg"             # 公会分区配置
+
+# 跨服  -> 游戏服
+#C2S_PlayerLoginOK = "C2S_PlayerLoginOK"                 # 跨服玩家处理登录成功
+C2S_SendFakePack = "C2S_SendFakePack"                   # 给玩家发送封包
+C2S_FamilyCrossInfo = "C2S_FamilyCrossInfo"             # 跨服同步给游戏服的公会信息
+C2S_FamilyDataRet = "C2S_FamilyDataRet"                 # 公会首次跨服互通时同步数据结果回复
+C2S_FamilyMapPlayer = "C2S_FamilyMapPlayer"             # 给公会玩家处理地图服务器逻辑
+C2S_FamilyPyPackRet = "C2S_FamilyPyPackRet"             # 公会功能玩家请求包处理结束回包,一般用于重置请求cd等
+C2S_NotifyCode = "C2S_NotifyCode"                       # 给玩家发送信息提示
+C2S_CostPlayerResources = "C2S_CostPlayerResources"     # 扣除玩家资源,货币、物品等
+C2S_GivePlayerResources = "C2S_GivePlayerResources"     # 奖励玩家资源,货币、物品等
+C2S_SetPlayerNomalDict = "C2S_SetPlayerNomalDict"       # 设置玩家字典值
+C2S_SendPlayerMail = "C2S_SendPlayerMail"               # 发送玩家个人邮件
+
+# 游戏服  -> 跨服
+S2C_OnlineState = "S2C_OnlineState"                     # 玩家在线状态同步
+S2C_PlayerBaseInfo = "S2C_PlayerBaseInfo"               # 玩家基础信息同步
+S2C_FamilyData = "S2C_FamilyData"                       # 公会首次跨服互通时同步数据
+S2C_FamilyPyPack = "S2C_FamilyPyPack"                   # 公会功能玩家请求包
+S2C_GMCMD = "S2C_GMCMD"                                 # GM命令
+
+# 其他
+S2B_BattleRequest = "S2B_BattleRequest"                 # 战斗请求
+B2S_BattleResult = "B2S_BattleResult"                   # 战斗结果
+
+# Debug日志不输出通讯数据明细的类型,debug模式下看,一些纯数据类的可不输出通讯数据明细
+NoLogDataSSMsgTypes = [S2B_BattleRequest, B2S_BattleResult, S2C_FamilyData, C2S_SendFakePack]
 
 # 跨服服务器发送子服信息定义
 CrossServerMsg_CrossServerState = "CrossServerState"    # 跨服服务器状态变更

--
Gitblit v1.8.0