From 2b1809b03de45a8b00f168673ea607c4857fc88a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 27 十二月 2021 14:17:40 +0800
Subject: [PATCH] 9265 【BT5】【后端】53、新增幸运云购(增加活动限制等级配置及封包通知)

---
 PySysDB/PySysDBG.h |  346 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 327 insertions(+), 19 deletions(-)

diff --git a/PySysDB/PySysDBG.h b/PySysDB/PySysDBG.h
index 4daeb65..b2a77bc 100644
--- a/PySysDB/PySysDBG.h
+++ b/PySysDB/PySysDBG.h
@@ -221,6 +221,7 @@
 	DWORD		StoneNPCID;	//墓碑NPCID
 	WORD		RebornPreNotifyTime;	//复活前X秒通知
 	char		SourceName;	//BOSS来源
+	BYTE		CanAssist;	//是否可协助
 };
 
 //Boss首杀
@@ -260,13 +261,57 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	BYTE		IsDayReset;	//是否每天重置
 	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
 	list		RedPacketIDList;	//每日对应红包ID列表[[第一天红包ID列表], ...]
 	WORD		LVLimit;	//限制等级
+};
+
+//节日登录奖励时间表
+
+struct tagActFeastLogin
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+};
+
+//节日祝福时间表
+
+struct tagActFeastWish
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+};
+
+//节日游历时间表
+
+struct tagActFeastTravel
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
 };
 
 //等级开启功能 #tagFuncOpenLV
@@ -325,9 +370,9 @@
 struct tagActSpringSale
 {
 	DWORD		_CfgID;	//配置ID
-	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	list		StartTimeList;	//开启时间列表, 支持多个时段
@@ -345,9 +390,9 @@
 struct tagActFlashGiftbag
 {
 	DWORD		_CfgID;	//配置ID
-	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	list		StartTimeList;	//开启时间列表, 支持多个时段
@@ -356,8 +401,21 @@
 	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
 	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
 	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	WORD		LimitWorldLV;	//限制开启的最低世界等级
 	WORD		LVLimit;	//限制等级
 	BYTE		IsDayReset;	//是否每天重置
+};
+
+//每日礼包表
+
+struct tagActDailyGiftbag
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
 };
 
 //双倍经验活动表
@@ -383,14 +441,78 @@
 struct tagActCostRebate
 {
 	DWORD		_CfgID;	//配置ID
-	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
 	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
 	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	BYTE		IsDayReset;	//是否每天重置
+};
+
+//集字活动时间表
+
+struct tagActCollectWords
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+};
+
+//垃圾分类活动时间表
+
+struct tagActGarbageSorting
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
+};
+
+//仙匣秘境活动时间表
+
+struct tagActXianXiaMJ
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
+};
+
+//骑宠盛宴活动
+
+struct tagActHorsePetFeast
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	list		StartTimeList;	//开启时间列表, 支持多个时段
+	list		EndTimeList;	//结束时间列表, 支持多个时段
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
 	BYTE		IsDayReset;	//是否每天重置
 };
 
@@ -417,7 +539,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置;2-5点开始0点结束
@@ -442,7 +564,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
@@ -458,9 +580,9 @@
 struct tagActFlashSale
 {
 	DWORD		_CfgID;	//配置ID
-	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	list		StartTimeList;	//开启时间列表, 支持多个时段
@@ -502,14 +624,105 @@
 	WORD		LVLimit;	//限制等级
 };
 
+//充值返利活动表
+
+struct tagActRechargePrize
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	BYTE		IsDayReset;	//是否每天重置
+};
+
+//累计充值返利仙玉活动表
+
+struct tagActRechargeRebateGold
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	BYTE		IsDayReset;	//是否每天重置
+};
+
+//成长必买活动表
+
+struct tagActGrowupBuy
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActMark;	//活动组标记
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+};
+
+//单笔累充活动表
+
+struct tagActSingleRecharge
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+	BYTE		IsDayReset;	//是否每天重置
+};
+
+//转盘活动表
+
+struct tagActTurntable
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	BYTE		IsDayReset;	//是否每天重置
+};
+
+//多日连充活动表
+
+struct tagActManyDayRecharge
+{
+	DWORD		_CfgID;	//配置ID
+	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
+};
+
 //累计充值活动表
 
 struct tagActTotalRecharge
 {
 	DWORD		_CfgID;	//配置ID
-	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
+	BYTE		ActNum;	//活动分组编号, 活动类型 * 10 + 不同界面编号
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
@@ -555,7 +768,6 @@
 {
 	BYTE		_DanLV;	//段位等级
 	WORD		LVUpScore;	//升段位所需积分
-	list		MatchRange;	//可匹配到的玩家段位区间 [从段位A, 到段位B],配[]代表只匹配本段位的
 	BYTE		MatchRobotRate;	//匹配机器人基础概率,百分率
 	BYTE		MatchRobotRateEx;	//匹配机器人失败次数附加概率,百分率
 };
@@ -570,6 +782,16 @@
 	BYTE		_CopyMapID;	//虚拟线路ID
 };
 
+//跨服Boss魔化之地分区地图表
+
+struct tagCrossDemonLandZoneMap
+{
+	BYTE		ZoneID;	//分区ID
+	DWORD		_MapID;	//场景地图ID
+	DWORD		_DataMapID;	//数据地图ID
+	BYTE		_CopyMapID;	//虚拟线路ID
+};
+
 //周狂欢活动时间表
 
 struct tagActWeekParty
@@ -577,7 +799,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	WORD		AdvanceMinutes;	//前端提前X分钟展示活动
@@ -595,7 +817,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	WORD		AdvanceMinutes;	//前端提前X分钟展示活动
@@ -614,7 +836,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	WORD		AdvanceMinutes;	//前端提前X分钟展示活动
@@ -632,7 +854,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置;2-5点开始0点结束
@@ -650,6 +872,32 @@
 	dict		Award;	//奖励 {"职业":[[物品ID,个数,是否绑定],...], ...}
 };
 
+//情缘礼物表
+
+struct tagLoveGift
+{
+	BYTE		_GiftNum;	//聘礼ID
+	float		AddCharmSelf;	//单个增加自身魅力
+	float		AddCharmTag;	//单个增加对方魅力
+	DWORD		AddIntimacy;	//单个增加双方亲密度
+	char		WorldNotifyKey;	//广播key
+};
+
+//情缘提亲表
+
+struct tagMarry
+{
+	BYTE		_BridePriceID;	//聘礼ID
+	BYTE		CanBuyCount;	//可购买次数
+	BYTE		IsDayReset;	//是否每日重置
+	DWORD		Prosperity;	//初始繁荣度
+	WORD		CandyTimes;	//喜糖持续时间秒
+	list		CandyItemWeightInfo;	//喜糖物品库权重列表[[权重, 物品ID,个数,是否拍品], ...]
+	list		CandyNotifyItemInfo;	//喜糖需要广播的物品ID列表
+	list		BrideGiftItemInfo;	//聘礼物品列表[[物品ID,个数,是否拍品], ...]
+	char		WorldNotifyKey;	//广播key
+};
+
 //幸运鉴宝活动时间表
 
 struct tagActLuckyTreasure
@@ -657,7 +905,7 @@
 	DWORD		_CfgID;	//配置ID
 	char		ActMark;	//活动组标记
 	list		PlatformList;	//活动平台列表["平台A", "平台A", ...],配[]代表所有
-	list		ServerIDList;	//服务器ID列表
+	list		ServerGroupIDList;	//服务器ID列表
 	char		StartDate;	//开启日期
 	char		EndDate;	//结束日期
 	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
@@ -665,6 +913,58 @@
 	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
 	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[间隔分钟, 广播key]
 	WORD		LVLimit;	//限制等级
+};
+
+//跨服幸运云购表
+
+struct tagCrossActLuckyCloudBuy
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActGroupName;	//活动组名(同组活动的名字需相同)
+	BYTE		ZoneID;		//组内分组编号
+	list		ServerIDRangeList;	//活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...]
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	WORD		LVLimit;	//限制等级
+	list		TemplateIDList;	//模板ID列表
+};
+
+//跨服幸运云购模板表
+
+struct tagCrossActLuckyCloudBuyTemplate
+{
+	DWORD		_TemplateID;	//模板ID
+	list		BaseAwardInfo;	//每次购买固定奖励 [[物品ID,个数,是否拍品], ...]
+	list		RandAwardWeightInfo;	//每次购买随机奖励权重信息 [[权重,物品ID,个数,是否拍品], ...]
+	list		SuperItemWeightInfo;	//大奖随机权重信息  [[权重,物品ID,个数,是否拍品,价值货币类型,货币值], ...]
+};
+
+//跨服充值排行活动时间表
+
+struct tagCrossActCTGBillboard
+{
+	DWORD		_CfgID;	//配置ID
+	char		ActGroupName;	//活动组名(同组活动的名字需相同)
+	BYTE		ZoneID;		//组内分组编号
+	list		ServerIDRangeList;	//活动的账号服务器ID范围列表 [[serverIDA, serverIDB], ...]
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	dict		NotifyInfoStart;	//全服提示信息 - 相对开始时间
+	dict		NotifyInfoEnd;	//全服提示信息 - 相对结束时间
+	list		NotifyInfoLoop;	//全服提示信息 - 循环广播[循环分钟, 广播key, [广播参数列表可选]]
+	BYTE		IsDayReset;	//是否每天重置
+	list		TemplateIDList;	//模板ID列表
+};
+
+//跨服充值排行模板名次奖励表
+
+struct tagCrossActCTGBillboardOrder
+{
+	DWORD		_TemplateID;	//模板ID
+	WORD		OrderA;	//名次A
+	WORD		OrderB;	//至名次B
+	float		CTGAtleast;	//至少充值RMB
+	list		AwardItemList;	//奖励物品列表[[物品ID,个数,是否拍品], ...]
 };
 
 //装备升星表
@@ -689,6 +989,14 @@
 	list		RankAuctionItem;	//拍品奖励[[拍品ID,个数], ...]
 };
 
+//协助感谢礼盒表
+
+struct tagAssistThanksGift
+{
+	DWORD		_GiftID;	//礼盒物品ID
+	BYTE		AssistAwardCount;	// 协助奖励每日次数
+};
+
 //缥缈仙域表
 
 struct tagFairyDomain

--
Gitblit v1.8.0