From fc1f545af5f299f052a4e5a1525629d4c0747a5a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 31 三月 2026 14:34:49 +0800
Subject: [PATCH] 526 【挑战】PVP群英榜-后端(跨服群英榜支持;支持跨服PK;优化多地图战斗分发支持重读;支持查看跨服榜单,支持后台查看榜单;优化玩家信息同步跨服及时性;修复跨服重启过快导致的游戏服不触发重连问题;)
---
ServerPack/HC0_CrossRealm/CrossZoneInfo.des | 2 +-
ServerPack/HB4_FightDefine/TurnFightRet.h | 1 +
ClientPack/CA1_Sys/ViewBillboard.h | 1 +
ServerPack/HC0_CrossRealm/CrossZoneInfo.h | 9 ++++++---
ServerPack/HC2_CrossServerToServer/SSHeart.h | 1 +
5 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/ClientPack/CA1_Sys/ViewBillboard.h b/ClientPack/CA1_Sys/ViewBillboard.h
index c33e6ad..fb172c3 100644
--- a/ClientPack/CA1_Sys/ViewBillboard.h
+++ b/ClientPack/CA1_Sys/ViewBillboard.h
@@ -9,4 +9,5 @@
WORD StartIndex; //查看的起始名次索引, 默认0
BYTE ViewCnt; //查看条数,默认20,单次最大不超过100
DWORD ViewID; //附带查看指定ID所在名次前后数据,如玩家ID、家族ID等
+ DWORD CrossServerID; //跨服榜时需发送所属跨服服务器ID,0默认本服
};
diff --git a/ServerPack/HB4_FightDefine/TurnFightRet.h b/ServerPack/HB4_FightDefine/TurnFightRet.h
index c6b0bc6..8704e9a 100644
--- a/ServerPack/HB4_FightDefine/TurnFightRet.h
+++ b/ServerPack/HB4_FightDefine/TurnFightRet.h
@@ -16,4 +16,5 @@
char BatStatMsg[BatLen]; //战斗相关统计信息
char PathDate[8]; //战报路径日期, yyyyMMdd, 为空时代表公共类的战报,不为空时为玩家个人类战报
char GUID[40]; //战报guid,前端根据功能MapID判断是否跨服功能,是的话从跨服服务器下载战报,否的话从本服下载
+ DWORD CrossServerID; //战报所在跨服ID,本服时为0
};
diff --git a/ServerPack/HC0_CrossRealm/CrossZoneInfo.des b/ServerPack/HC0_CrossRealm/CrossZoneInfo.des
index 7490733..5f725f1 100644
--- a/ServerPack/HC0_CrossRealm/CrossZoneInfo.des
+++ b/ServerPack/HC0_CrossRealm/CrossZoneInfo.des
@@ -1 +1 @@
-C0 10 跨服所属分区信息 #tagGCCrossZoneInfo
+C0 10 跨服功能所属分区 #tagSCCrossZoneInfo
diff --git a/ServerPack/HC0_CrossRealm/CrossZoneInfo.h b/ServerPack/HC0_CrossRealm/CrossZoneInfo.h
index 6691e70..6e00718 100644
--- a/ServerPack/HC0_CrossRealm/CrossZoneInfo.h
+++ b/ServerPack/HC0_CrossRealm/CrossZoneInfo.h
@@ -1,7 +1,10 @@
-// C0 10 跨服所属分区信息 #tagGCCrossZoneInfo
+// C0 10 跨服功能所属分区 #tagSCCrossZoneInfo
-struct tagGCCrossZoneInfo
+struct tagSCCrossZoneInfo
{
tagHead Head;
- BYTE CommZoneID; // 所属常规分区ID
+ DWORD MapID; // 功能地图ID,有收到该封包时代表该功能开始跨服了,但并不一定有分区互通信息,可能处于分配阶段
+ DWORD ZoneID; // 所属分区,可能为0
+ WORD ServerCnt;
+ DWORD ServerIDList[ServerCnt]; // 互通服务器ID列表,可能为空
};
diff --git a/ServerPack/HC2_CrossServerToServer/SSHeart.h b/ServerPack/HC2_CrossServerToServer/SSHeart.h
index f767dd1..cc7962f 100644
--- a/ServerPack/HC2_CrossServerToServer/SSHeart.h
+++ b/ServerPack/HC2_CrossServerToServer/SSHeart.h
@@ -6,4 +6,5 @@
DWORD ServerID;
BYTE ServerType; //服务器类型
DWORD ServerTime; //服务器时间戳
+ BYTE IsResart; //是否重启了
};
--
Gitblit v1.8.0