From 7e74d638fb1e2d19d141b75d3c6bb1c28251300c Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 04 一月 2022 15:02:54 +0800
Subject: [PATCH] 1111 【BT3_1.102.1】【BT4】【主干】【BT5】【bt5_1.101.1】【yn_1.0.1】修复跨服榜存储账号长度bug(name1、name2存储长度限制33)

---
 ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py |  492 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 477 insertions(+), 15 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index c1590b8..184986f 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -313,9 +313,9 @@
 
                 "ActSpringSale":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("list", "StartTimeList", 0),
@@ -330,9 +330,9 @@
 
                 "ActFlashGiftbag":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("list", "StartTimeList", 0),
@@ -341,6 +341,7 @@
                         ("dict", "NotifyInfoStart", 0),
                         ("dict", "NotifyInfoEnd", 0),
                         ("list", "NotifyInfoLoop", 0),
+                        ("WORD", "LimitWorldLV", 0),
                         ("WORD", "LVLimit", 0),
                         ("BYTE", "IsDayReset", 0),
                         ),
@@ -371,9 +372,9 @@
 
                 "ActCostRebate":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("dict", "NotifyInfoStart", 0),
@@ -392,6 +393,46 @@
                         ("dict", "NotifyInfoStart", 0),
                         ("dict", "NotifyInfoEnd", 0),
                         ("list", "NotifyInfoLoop", 0),
+                        ),
+
+                "ActGarbageSorting":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "ResetType", 0),
+                        ),
+
+                "ActXianXiaMJ":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "ResetType", 0),
+                        ),
+
+                "ActHorsePetFeast":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("list", "StartTimeList", 0),
+                        ("list", "EndTimeList", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("BYTE", "IsDayReset", 0),
                         ),
 
                 "ActBossReborn":(
@@ -443,9 +484,9 @@
 
                 "ActFlashSale":(
                         ("DWORD", "CfgID", 1),
-                        ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("list", "StartTimeList", 0),
@@ -493,11 +534,59 @@
                         ("BYTE", "IsDayReset", 0),
                         ),
 
+                "ActRechargeRebateGold":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActMark", 0),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ),
+
                 "ActGrowupBuy":(
                         ("DWORD", "CfgID", 1),
                         ("char", "ActMark", 0),
                         ("list", "PlatformList", 0),
                         ("list", "ServerGroupIDList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ),
+
+                "ActSingleRecharge":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("dict", "NotifyInfoStart", 0),
+                        ("dict", "NotifyInfoEnd", 0),
+                        ("list", "NotifyInfoLoop", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ),
+
+                "ActTurntable":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ),
+
+                "ActManyDayRecharge":(
+                        ("DWORD", "CfgID", 1),
+                        ("list", "PlatformList", 0),
+                        ("list", "ServerGroupIDList", 0),
+                        ("BYTE", "ActNum", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
                         ("dict", "NotifyInfoStart", 0),
@@ -543,12 +632,18 @@
                 "CrossRealmPKDan":(
                         ("BYTE", "DanLV", 1),
                         ("WORD", "LVUpScore", 0),
-                        ("list", "MatchRange", 0),
                         ("BYTE", "MatchRobotRate", 0),
                         ("BYTE", "MatchRobotRateEx", 0),
                         ),
 
                 "CrossPenglaiZoneMap":(
+                        ("BYTE", "ZoneID", 0),
+                        ("DWORD", "MapID", 1),
+                        ("DWORD", "DataMapID", 1),
+                        ("BYTE", "CopyMapID", 1),
+                        ),
+
+                "CrossDemonLandZoneMap":(
                         ("BYTE", "ZoneID", 0),
                         ("DWORD", "MapID", 1),
                         ("DWORD", "DataMapID", 1),
@@ -620,6 +715,26 @@
                         ("dict", "Award", 0),
                         ),
 
+                "LoveGift":(
+                        ("BYTE", "GiftNum", 1),
+                        ("float", "AddCharmSelf", 0),
+                        ("float", "AddCharmTag", 0),
+                        ("DWORD", "AddIntimacy", 0),
+                        ("char", "WorldNotifyKey", 0),
+                        ),
+
+                "Marry":(
+                        ("BYTE", "BridePriceID", 1),
+                        ("BYTE", "CanBuyCount", 0),
+                        ("BYTE", "IsDayReset", 0),
+                        ("DWORD", "Prosperity", 0),
+                        ("WORD", "CandyTimes", 0),
+                        ("list", "CandyItemWeightInfo", 0),
+                        ("list", "CandyNotifyItemInfo", 0),
+                        ("list", "BrideGiftItemInfo", 0),
+                        ("char", "WorldNotifyKey", 0),
+                        ),
+
                 "ActLuckyTreasure":(
                         ("DWORD", "CfgID", 1),
                         ("char", "ActMark", 0),
@@ -634,9 +749,28 @@
                         ("WORD", "LVLimit", 0),
                         ),
 
+                "CrossActLuckyCloudBuy":(
+                        ("DWORD", "CfgID", 1),
+                        ("char", "ActGroupName", 0),
+                        ("BYTE", "ZoneID", 0),
+                        ("list", "ServerIDRangeList", 0),
+                        ("char", "StartDate", 0),
+                        ("char", "EndDate", 0),
+                        ("WORD", "LVLimit", 0),
+                        ("list", "TemplateIDList", 0),
+                        ),
+
+                "CrossActLuckyCloudBuyTemplate":(
+                        ("DWORD", "TemplateID", 1),
+                        ("list", "BaseAwardInfo", 0),
+                        ("list", "RandAwardWeightInfo", 0),
+                        ("list", "SuperItemWeightInfo", 0),
+                        ),
+
                 "CrossActCTGBillboard":(
                         ("DWORD", "CfgID", 1),
                         ("char", "ActGroupName", 0),
+                        ("BYTE", "ZoneID", 0),
                         ("list", "ServerIDRangeList", 0),
                         ("char", "StartDate", 0),
                         ("char", "EndDate", 0),
@@ -1276,9 +1410,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.StartTimeList = []
@@ -1292,9 +1426,9 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
@@ -1311,9 +1445,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.StartTimeList = []
@@ -1322,14 +1456,15 @@
         self.NotifyInfoStart = {}
         self.NotifyInfoEnd = {}
         self.NotifyInfoLoop = []
+        self.LimitWorldLV = 0
         self.LVLimit = 0
         self.IsDayReset = 0
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
@@ -1338,6 +1473,7 @@
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
     def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetLimitWorldLV(self): return self.LimitWorldLV # 限制开启的最低世界等级
     def GetLVLimit(self): return self.LVLimit # 限制等级
     def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
@@ -1396,9 +1532,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.NotifyInfoStart = {}
@@ -1408,9 +1544,9 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
@@ -1442,6 +1578,89 @@
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
     def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
+# 垃圾分类活动时间表
+class IPY_ActGarbageSorting():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.ResetType = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
+
+# 仙匣秘境活动时间表
+class IPY_ActXianXiaMJ():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.ResetType = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
+
+# 骑宠盛宴活动
+class IPY_ActHorsePetFeast():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.StartTimeList = []
+        self.EndTimeList = []
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
+    def GetEndTimeList(self): return self.EndTimeList # 结束时间列表, 支持多个时段
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
 # BOSS复活活动时间表
 class IPY_ActBossReborn():
@@ -1546,9 +1765,9 @@
     
     def __init__(self):
         self.CfgID = 0
-        self.ActMark = ""
         self.PlatformList = []
         self.ServerGroupIDList = []
+        self.ActNum = 0
         self.StartDate = ""
         self.EndDate = ""
         self.StartTimeList = []
@@ -1563,9 +1782,9 @@
         return
         
     def GetCfgID(self): return self.CfgID # 配置ID
-    def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
@@ -1649,6 +1868,33 @@
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
 
+# 累计充值返利仙玉活动表
+class IPY_ActRechargeRebateGold():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActMark = ""
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActMark(self): return self.ActMark # 活动组标记
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+
 # 成长必买活动表
 class IPY_ActGrowupBuy():
     
@@ -1668,6 +1914,79 @@
     def GetActMark(self): return self.ActMark # 活动组标记
     def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
     def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+
+# 单笔累充活动表
+class IPY_ActSingleRecharge():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
+    def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+    def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+
+# 转盘活动表
+class IPY_ActTurntable():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.IsDayReset = 0
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+
+# 多日连充活动表
+class IPY_ActManyDayRecharge():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.PlatformList = []
+        self.ServerGroupIDList = []
+        self.ActNum = 0
+        self.StartDate = ""
+        self.EndDate = ""
+        self.NotifyInfoStart = {}
+        self.NotifyInfoEnd = {}
+        self.NotifyInfoLoop = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetPlatformList(self): return self.PlatformList # 活动平台列表["平台A", "平台A", ...],配[]代表所有
+    def GetServerGroupIDList(self): return self.ServerGroupIDList # 服务器ID列表
+    def GetActNum(self): return self.ActNum # 活动分组编号, 活动类型 * 10 + 不同界面编号
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
     def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
@@ -1754,19 +2073,32 @@
     def __init__(self):
         self.DanLV = 0
         self.LVUpScore = 0
-        self.MatchRange = []
         self.MatchRobotRate = 0
         self.MatchRobotRateEx = 0
         return
         
     def GetDanLV(self): return self.DanLV # 段位等级
     def GetLVUpScore(self): return self.LVUpScore # 升段位所需积分
-    def GetMatchRange(self): return self.MatchRange # 可匹配到的玩家段位区间 [从段位A, 到段位B],配[]代表只匹配本段位的
     def GetMatchRobotRate(self): return self.MatchRobotRate # 匹配机器人基础概率,百分率
     def GetMatchRobotRateEx(self): return self.MatchRobotRateEx # 匹配机器人失败次数附加概率,百分率
 
 # 跨服Boss蓬莱仙境分区地图表
 class IPY_CrossPenglaiZoneMap():
+    
+    def __init__(self):
+        self.ZoneID = 0
+        self.MapID = 0
+        self.DataMapID = 0
+        self.CopyMapID = 0
+        return
+        
+    def GetZoneID(self): return self.ZoneID # 分区ID
+    def GetMapID(self): return self.MapID # 场景地图ID
+    def GetDataMapID(self): return self.DataMapID # 数据地图ID
+    def GetCopyMapID(self): return self.CopyMapID # 虚拟线路ID
+
+# 跨服Boss魔化之地分区地图表
+class IPY_CrossDemonLandZoneMap():
     
     def __init__(self):
         self.ZoneID = 0
@@ -1915,6 +2247,48 @@
     def GetRank(self): return self.Rank # 排名
     def GetAward(self): return self.Award # 奖励 {"职业":[[物品ID,个数,是否绑定],...], ...}
 
+# 情缘礼物表
+class IPY_LoveGift():
+    
+    def __init__(self):
+        self.GiftNum = 0
+        self.AddCharmSelf = 0.0
+        self.AddCharmTag = 0.0
+        self.AddIntimacy = 0
+        self.WorldNotifyKey = ""
+        return
+        
+    def GetGiftNum(self): return self.GiftNum # 聘礼ID
+    def GetAddCharmSelf(self): return self.AddCharmSelf # 单个增加自身魅力
+    def GetAddCharmTag(self): return self.AddCharmTag # 单个增加对方魅力
+    def GetAddIntimacy(self): return self.AddIntimacy # 单个增加双方亲密度
+    def GetWorldNotifyKey(self): return self.WorldNotifyKey # 广播key
+
+# 情缘提亲表
+class IPY_Marry():
+    
+    def __init__(self):
+        self.BridePriceID = 0
+        self.CanBuyCount = 0
+        self.IsDayReset = 0
+        self.Prosperity = 0
+        self.CandyTimes = 0
+        self.CandyItemWeightInfo = []
+        self.CandyNotifyItemInfo = []
+        self.BrideGiftItemInfo = []
+        self.WorldNotifyKey = ""
+        return
+        
+    def GetBridePriceID(self): return self.BridePriceID # 聘礼ID
+    def GetCanBuyCount(self): return self.CanBuyCount # 可购买次数
+    def GetIsDayReset(self): return self.IsDayReset # 是否每日重置
+    def GetProsperity(self): return self.Prosperity # 初始繁荣度
+    def GetCandyTimes(self): return self.CandyTimes # 喜糖持续时间秒
+    def GetCandyItemWeightInfo(self): return self.CandyItemWeightInfo # 喜糖物品库权重列表[[权重, 物品ID,个数,是否拍品], ...]
+    def GetCandyNotifyItemInfo(self): return self.CandyNotifyItemInfo # 喜糖需要广播的物品ID列表
+    def GetBrideGiftItemInfo(self): return self.BrideGiftItemInfo # 聘礼物品列表[[物品ID,个数,是否拍品], ...]
+    def GetWorldNotifyKey(self): return self.WorldNotifyKey # 广播key
+
 # 幸运鉴宝活动时间表
 class IPY_ActLuckyTreasure():
     
@@ -1944,12 +2318,51 @@
     def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
     def GetLVLimit(self): return self.LVLimit # 限制等级
 
+# 跨服幸运云购表
+class IPY_CrossActLuckyCloudBuy():
+    
+    def __init__(self):
+        self.CfgID = 0
+        self.ActGroupName = ""
+        self.ZoneID = 0
+        self.ServerIDRangeList = []
+        self.StartDate = ""
+        self.EndDate = ""
+        self.LVLimit = 0
+        self.TemplateIDList = []
+        return
+        
+    def GetCfgID(self): return self.CfgID # 配置ID
+    def GetActGroupName(self): return self.ActGroupName # 活动组名(同组活动的名字需相同)
+    def GetZoneID(self): return self.ZoneID # 组内分组编号
+    def GetServerIDRangeList(self): return self.ServerIDRangeList # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...]
+    def GetStartDate(self): return self.StartDate # 开启日期
+    def GetEndDate(self): return self.EndDate # 结束日期
+    def GetLVLimit(self): return self.LVLimit # 限制等级
+    def GetTemplateIDList(self): return self.TemplateIDList # 模板ID列表
+
+# 跨服幸运云购模板表
+class IPY_CrossActLuckyCloudBuyTemplate():
+    
+    def __init__(self):
+        self.TemplateID = 0
+        self.BaseAwardInfo = []
+        self.RandAwardWeightInfo = []
+        self.SuperItemWeightInfo = []
+        return
+        
+    def GetTemplateID(self): return self.TemplateID # 模板ID
+    def GetBaseAwardInfo(self): return self.BaseAwardInfo # 每次购买固定奖励 [[物品ID,个数,是否拍品], ...]
+    def GetRandAwardWeightInfo(self): return self.RandAwardWeightInfo # 每次购买随机奖励权重信息 [[权重,物品ID,个数,是否拍品], ...]
+    def GetSuperItemWeightInfo(self): return self.SuperItemWeightInfo # 大奖随机权重信息  [[权重,物品ID,个数,是否拍品,价值货币类型,货币值], ...]
+
 # 跨服充值排行活动时间表
 class IPY_CrossActCTGBillboard():
     
     def __init__(self):
         self.CfgID = 0
         self.ActGroupName = ""
+        self.ZoneID = 0
         self.ServerIDRangeList = []
         self.StartDate = ""
         self.EndDate = ""
@@ -1962,6 +2375,7 @@
         
     def GetCfgID(self): return self.CfgID # 配置ID
     def GetActGroupName(self): return self.ActGroupName # 活动组名(同组活动的名字需相同)
+    def GetZoneID(self): return self.ZoneID # 组内分组编号
     def GetServerIDRangeList(self): return self.ServerIDRangeList # 活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...]
     def GetStartDate(self): return self.StartDate # 开启日期
     def GetEndDate(self): return self.EndDate # 结束日期
@@ -2140,6 +2554,12 @@
         self.ipyActCostRebateLen = len(self.ipyActCostRebateCache)
         self.ipyActCollectWordsCache = self.__LoadFileData("ActCollectWords", IPY_ActCollectWords)
         self.ipyActCollectWordsLen = len(self.ipyActCollectWordsCache)
+        self.ipyActGarbageSortingCache = self.__LoadFileData("ActGarbageSorting", IPY_ActGarbageSorting)
+        self.ipyActGarbageSortingLen = len(self.ipyActGarbageSortingCache)
+        self.ipyActXianXiaMJCache = self.__LoadFileData("ActXianXiaMJ", IPY_ActXianXiaMJ)
+        self.ipyActXianXiaMJLen = len(self.ipyActXianXiaMJCache)
+        self.ipyActHorsePetFeastCache = self.__LoadFileData("ActHorsePetFeast", IPY_ActHorsePetFeast)
+        self.ipyActHorsePetFeastLen = len(self.ipyActHorsePetFeastCache)
         self.ipyActBossRebornCache = self.__LoadFileData("ActBossReborn", IPY_ActBossReborn)
         self.ipyActBossRebornLen = len(self.ipyActBossRebornCache)
         self.ipyActFairyCeremonyCache = self.__LoadFileData("ActFairyCeremony", IPY_ActFairyCeremony)
@@ -2156,8 +2576,16 @@
         self.ipyActWishingWellLen = len(self.ipyActWishingWellCache)
         self.ipyActRechargePrizeCache = self.__LoadFileData("ActRechargePrize", IPY_ActRechargePrize)
         self.ipyActRechargePrizeLen = len(self.ipyActRechargePrizeCache)
+        self.ipyActRechargeRebateGoldCache = self.__LoadFileData("ActRechargeRebateGold", IPY_ActRechargeRebateGold)
+        self.ipyActRechargeRebateGoldLen = len(self.ipyActRechargeRebateGoldCache)
         self.ipyActGrowupBuyCache = self.__LoadFileData("ActGrowupBuy", IPY_ActGrowupBuy)
         self.ipyActGrowupBuyLen = len(self.ipyActGrowupBuyCache)
+        self.ipyActSingleRechargeCache = self.__LoadFileData("ActSingleRecharge", IPY_ActSingleRecharge)
+        self.ipyActSingleRechargeLen = len(self.ipyActSingleRechargeCache)
+        self.ipyActTurntableCache = self.__LoadFileData("ActTurntable", IPY_ActTurntable)
+        self.ipyActTurntableLen = len(self.ipyActTurntableCache)
+        self.ipyActManyDayRechargeCache = self.__LoadFileData("ActManyDayRecharge", IPY_ActManyDayRecharge)
+        self.ipyActManyDayRechargeLen = len(self.ipyActManyDayRechargeCache)
         self.ipyActTotalRechargeCache = self.__LoadFileData("ActTotalRecharge", IPY_ActTotalRecharge)
         self.ipyActTotalRechargeLen = len(self.ipyActTotalRechargeCache)
         self.ipyCrossZoneCommCache = self.__LoadFileData("CrossZoneComm", IPY_CrossZoneComm)
@@ -2170,6 +2598,8 @@
         self.ipyCrossRealmPKDanLen = len(self.ipyCrossRealmPKDanCache)
         self.ipyCrossPenglaiZoneMapCache = self.__LoadFileData("CrossPenglaiZoneMap", IPY_CrossPenglaiZoneMap)
         self.ipyCrossPenglaiZoneMapLen = len(self.ipyCrossPenglaiZoneMapCache)
+        self.ipyCrossDemonLandZoneMapCache = self.__LoadFileData("CrossDemonLandZoneMap", IPY_CrossDemonLandZoneMap)
+        self.ipyCrossDemonLandZoneMapLen = len(self.ipyCrossDemonLandZoneMapCache)
         self.ipyActWeekPartyCache = self.__LoadFileData("ActWeekParty", IPY_ActWeekParty)
         self.ipyActWeekPartyLen = len(self.ipyActWeekPartyCache)
         self.ipyActLoginAwardCache = self.__LoadFileData("ActLoginAward", IPY_ActLoginAward)
@@ -2180,8 +2610,16 @@
         self.ipyActNewFairyCeremonyLen = len(self.ipyActNewFairyCeremonyCache)
         self.ipyNewUniquenessArriveCache = self.__LoadFileData("NewUniquenessArrive", IPY_NewUniquenessArrive)
         self.ipyNewUniquenessArriveLen = len(self.ipyNewUniquenessArriveCache)
+        self.ipyLoveGiftCache = self.__LoadFileData("LoveGift", IPY_LoveGift)
+        self.ipyLoveGiftLen = len(self.ipyLoveGiftCache)
+        self.ipyMarryCache = self.__LoadFileData("Marry", IPY_Marry)
+        self.ipyMarryLen = len(self.ipyMarryCache)
         self.ipyActLuckyTreasureCache = self.__LoadFileData("ActLuckyTreasure", IPY_ActLuckyTreasure)
         self.ipyActLuckyTreasureLen = len(self.ipyActLuckyTreasureCache)
+        self.ipyCrossActLuckyCloudBuyCache = self.__LoadFileData("CrossActLuckyCloudBuy", IPY_CrossActLuckyCloudBuy)
+        self.ipyCrossActLuckyCloudBuyLen = len(self.ipyCrossActLuckyCloudBuyCache)
+        self.ipyCrossActLuckyCloudBuyTemplateCache = self.__LoadFileData("CrossActLuckyCloudBuyTemplate", IPY_CrossActLuckyCloudBuyTemplate)
+        self.ipyCrossActLuckyCloudBuyTemplateLen = len(self.ipyCrossActLuckyCloudBuyTemplateCache)
         self.ipyCrossActCTGBillboardCache = self.__LoadFileData("CrossActCTGBillboard", IPY_CrossActCTGBillboard)
         self.ipyCrossActCTGBillboardLen = len(self.ipyCrossActCTGBillboardCache)
         self.ipyCrossActCTGBillboardOrderCache = self.__LoadFileData("CrossActCTGBillboardOrder", IPY_CrossActCTGBillboardOrder)
@@ -2430,6 +2868,12 @@
     def GetActCostRebateByIndex(self, index): return self.ipyActCostRebateCache[index]
     def GetActCollectWordsCount(self): return self.ipyActCollectWordsLen
     def GetActCollectWordsByIndex(self, index): return self.ipyActCollectWordsCache[index]
+    def GetActGarbageSortingCount(self): return self.ipyActGarbageSortingLen
+    def GetActGarbageSortingByIndex(self, index): return self.ipyActGarbageSortingCache[index]
+    def GetActXianXiaMJCount(self): return self.ipyActXianXiaMJLen
+    def GetActXianXiaMJByIndex(self, index): return self.ipyActXianXiaMJCache[index]
+    def GetActHorsePetFeastCount(self): return self.ipyActHorsePetFeastLen
+    def GetActHorsePetFeastByIndex(self, index): return self.ipyActHorsePetFeastCache[index]
     def GetActBossRebornCount(self): return self.ipyActBossRebornLen
     def GetActBossRebornByIndex(self, index): return self.ipyActBossRebornCache[index]
     def GetActFairyCeremonyCount(self): return self.ipyActFairyCeremonyLen
@@ -2446,8 +2890,16 @@
     def GetActWishingWellByIndex(self, index): return self.ipyActWishingWellCache[index]
     def GetActRechargePrizeCount(self): return self.ipyActRechargePrizeLen
     def GetActRechargePrizeByIndex(self, index): return self.ipyActRechargePrizeCache[index]
+    def GetActRechargeRebateGoldCount(self): return self.ipyActRechargeRebateGoldLen
+    def GetActRechargeRebateGoldByIndex(self, index): return self.ipyActRechargeRebateGoldCache[index]
     def GetActGrowupBuyCount(self): return self.ipyActGrowupBuyLen
     def GetActGrowupBuyByIndex(self, index): return self.ipyActGrowupBuyCache[index]
+    def GetActSingleRechargeCount(self): return self.ipyActSingleRechargeLen
+    def GetActSingleRechargeByIndex(self, index): return self.ipyActSingleRechargeCache[index]
+    def GetActTurntableCount(self): return self.ipyActTurntableLen
+    def GetActTurntableByIndex(self, index): return self.ipyActTurntableCache[index]
+    def GetActManyDayRechargeCount(self): return self.ipyActManyDayRechargeLen
+    def GetActManyDayRechargeByIndex(self, index): return self.ipyActManyDayRechargeCache[index]
     def GetActTotalRechargeCount(self): return self.ipyActTotalRechargeLen
     def GetActTotalRechargeByIndex(self, index): return self.ipyActTotalRechargeCache[index]
     def GetCrossZoneCommCount(self): return self.ipyCrossZoneCommLen
@@ -2460,6 +2912,8 @@
     def GetCrossRealmPKDanByIndex(self, index): return self.ipyCrossRealmPKDanCache[index]
     def GetCrossPenglaiZoneMapCount(self): return self.ipyCrossPenglaiZoneMapLen
     def GetCrossPenglaiZoneMapByIndex(self, index): return self.ipyCrossPenglaiZoneMapCache[index]
+    def GetCrossDemonLandZoneMapCount(self): return self.ipyCrossDemonLandZoneMapLen
+    def GetCrossDemonLandZoneMapByIndex(self, index): return self.ipyCrossDemonLandZoneMapCache[index]
     def GetActWeekPartyCount(self): return self.ipyActWeekPartyLen
     def GetActWeekPartyByIndex(self, index): return self.ipyActWeekPartyCache[index]
     def GetActLoginAwardCount(self): return self.ipyActLoginAwardLen
@@ -2470,8 +2924,16 @@
     def GetActNewFairyCeremonyByIndex(self, index): return self.ipyActNewFairyCeremonyCache[index]
     def GetNewUniquenessArriveCount(self): return self.ipyNewUniquenessArriveLen
     def GetNewUniquenessArriveByIndex(self, index): return self.ipyNewUniquenessArriveCache[index]
+    def GetLoveGiftCount(self): return self.ipyLoveGiftLen
+    def GetLoveGiftByIndex(self, index): return self.ipyLoveGiftCache[index]
+    def GetMarryCount(self): return self.ipyMarryLen
+    def GetMarryByIndex(self, index): return self.ipyMarryCache[index]
     def GetActLuckyTreasureCount(self): return self.ipyActLuckyTreasureLen
     def GetActLuckyTreasureByIndex(self, index): return self.ipyActLuckyTreasureCache[index]
+    def GetCrossActLuckyCloudBuyCount(self): return self.ipyCrossActLuckyCloudBuyLen
+    def GetCrossActLuckyCloudBuyByIndex(self, index): return self.ipyCrossActLuckyCloudBuyCache[index]
+    def GetCrossActLuckyCloudBuyTemplateCount(self): return self.ipyCrossActLuckyCloudBuyTemplateLen
+    def GetCrossActLuckyCloudBuyTemplateByIndex(self, index): return self.ipyCrossActLuckyCloudBuyTemplateCache[index]
     def GetCrossActCTGBillboardCount(self): return self.ipyCrossActCTGBillboardLen
     def GetCrossActCTGBillboardByIndex(self, index): return self.ipyCrossActCTGBillboardCache[index]
     def GetCrossActCTGBillboardOrderCount(self): return self.ipyCrossActCTGBillboardOrderLen

--
Gitblit v1.8.0