From 5d79b486b2974522c2d1978dc90c3081827224e0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 26 二月 2026 15:46:46 +0800
Subject: [PATCH] 493 【活动内容】武将登场-服务端
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 224 +++++++++++++++++++++++++++++++++++++------------------
1 files changed, 150 insertions(+), 74 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 8f85a04..8257d1d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1008,6 +1008,7 @@
("list", "ItemListEx", 0),
("BYTE", "ResetType", 0),
("DWORD", "LimitCnt", 0),
+ ("DWORD", "CostItemID", 0),
("BYTE", "MoneyType", 0),
("DWORD", "MoneyNum", 0),
("DWORD", "MoneyOriginal", 0),
@@ -1173,10 +1174,10 @@
"TreasureSet":(
("BYTE", "TreasureType", 1),
- ("BYTE", "PackType", 0),
- ("BYTE", "CheckPack", 0),
- ("BYTE", "IsActType", 0),
+ ("list", "CheckPackList", 0),
+ ("BYTE", "ActType", 0),
("DWORD", "DailyMaxCount", 0),
+ ("DWORD", "DailyMaxCountMoney", 0),
("BYTE", "DailyFreeCount", 0),
("list", "TreasureCountList", 0),
("char", "RecycleItemMail", 0),
@@ -1189,10 +1190,12 @@
("char", "LuckyRateFormat", 0),
("BYTE", "LuckyGridNum", 0),
("dict", "GridNumMaxLimitInfo", 0),
+ ("list", "RecordGridNumList", 0),
("list", "NotifyGridNumList", 0),
("dict", "NotifyKeyDict", 0),
("BYTE", "AwardMoneyType", 0),
("WORD", "AwardMoneyValue", 0),
+ ("list", "AwardItemInfo", 0),
("BYTE", "WishReset", 0),
("dict", "WishLibSelect", 0),
("dict", "WishLibPubFreeCnt", 0),
@@ -1514,25 +1517,47 @@
("list", "AwardItemList", 0),
),
- "ActLoginNew":(
- ("DWORD", "CfgID", 1),
- ("char", "StartDate", 0),
- ("char", "EndDate", 0),
- ("WORD", "RelateFuncID", 0),
- ("BYTE", "FuncActDays", 0),
- ("BYTE", "FuncLoop", 0),
- ("WORD", "LVLimit", 0),
- ("list", "RepSignCostMoneyInfo", 0),
- ("BYTE", "TemplateID", 0),
- ("WORD", "AwardExCTGID", 0),
- ("WORD", "ActZhanlingType", 0),
- ),
-
- "ActLoginNewAward":(
+ "ActSignAward":(
("BYTE", "TemplateID", 1),
("BYTE", "DayNum", 0),
- ("list", "LoginAwardItemList", 0),
- ("list", "LoginAwardItemListEx", 0),
+ ("list", "SignAwardItemList", 0),
+ ),
+
+ "ActBillboardAward":(
+ ("DWORD", "TemplateID", 1),
+ ("WORD", "RankA", 0),
+ ("WORD", "RankB", 0),
+ ("float", "NeedValue", 0),
+ ("list", "AwardItemList", 0),
+ ),
+
+ "ActHeroAppear":(
+ ("DWORD", "CfgID", 1),
+ ("list", "PlatformList", 0),
+ ("list", "ServerIDList", 0),
+ ("BYTE", "ActNum", 0),
+ ("char", "StartDate", 0),
+ ("char", "EndDate", 0),
+ ("list", "ActHeroIDList", 0),
+ ("WORD", "ActTreasureType", 0),
+ ("BYTE", "StarGiftTempID", 0),
+ ("list", "SkinCTGIDList", 0),
+ ("list", "GiftCTGIDList", 0),
+ ("WORD", "GiftShopType", 0),
+ ("WORD", "ExShopType", 0),
+ ("char", "ExShopRecycleMail", 0),
+ ("WORD", "SignTempID", 0),
+ ("WORD", "BillTempID", 0),
+ ("char", "BillAwardMail", 0),
+ ),
+
+ "ActHeroAppearStar":(
+ ("BYTE", "StarTempID", 1),
+ ("BYTE", "NeedStar", 0),
+ ("BYTE", "AwardIndex", 0),
+ ("list", "FreeAwardItemList", 0),
+ ("WORD", "StarGiftCTGID", 0),
+ ("dict", "HeroGiftItemInfo", 0),
),
"EquipPlaceIndexMap":(
@@ -3157,11 +3182,12 @@
def GetItemListEx(self): return self.attrTuple[4] # 扩展物品列表[[物品ID,个数,是否绑定],...] list
def GetResetType(self): return self.attrTuple[5] # 重置类型 BYTE
def GetLimitCnt(self): return self.attrTuple[6] # 个人限制数量 DWORD
- def GetMoneyType(self): return self.attrTuple[7] # 金钱类型 BYTE
- def GetMoneyNum(self): return self.attrTuple[8] # 金钱数量 DWORD
- def GetMoneyOriginal(self): return self.attrTuple[9] # 原价 DWORD
- def GetUnlockType(self): return self.attrTuple[10] # 解锁类型 BYTE
- def GetUnlockValue(self): return self.attrTuple[11] # 解锁所需值 DWORD
+ def GetCostItemID(self): return self.attrTuple[7] # 消耗道具ID DWORD
+ def GetMoneyType(self): return self.attrTuple[8] # 金钱类型 BYTE
+ def GetMoneyNum(self): return self.attrTuple[9] # 金钱数量 DWORD
+ def GetMoneyOriginal(self): return self.attrTuple[10] # 原价 DWORD
+ def GetUnlockType(self): return self.attrTuple[11] # 解锁类型 BYTE
+ def GetUnlockValue(self): return self.attrTuple[12] # 解锁所需值 DWORD
# 每日任务表
class IPY_DailyTask():
@@ -3397,10 +3423,10 @@
return
def GetTreasureType(self): return self.attrTuple[0] # 寻宝类型 BYTE
- def GetPackType(self): return self.attrTuple[1] # 放入背包 BYTE
- def GetCheckPack(self): return self.attrTuple[2] # 是否检查背包 BYTE
- def GetIsActType(self): return self.attrTuple[3] # 是否活动寻宝 BYTE
- def GetDailyMaxCount(self): return self.attrTuple[4] # 每日最大次数 DWORD
+ def GetCheckPackList(self): return self.attrTuple[1] # 检查背包类型列表 list
+ def GetActType(self): return self.attrTuple[2] # 活动寻宝类型 BYTE
+ def GetDailyMaxCount(self): return self.attrTuple[3] # 每日最大次数 DWORD
+ def GetDailyMaxCountMoney(self): return self.attrTuple[4] # 每日货币次数 DWORD
def GetDailyFreeCount(self): return self.attrTuple[5] # 每日免费次数 BYTE
def GetTreasureCountList(self): return self.attrTuple[6] # 抽奖次数列表 list
def GetRecycleItemMail(self): return self.attrTuple[7] # 重置回收道具邮件,如果有配置回收邮件key,则重置时会回收多余的寻宝道具 char
@@ -3413,14 +3439,16 @@
def GetLuckyRateFormat(self): return self.attrTuple[14] # 幸运格子概率公式 char
def GetLuckyGridNum(self): return self.attrTuple[15] # 幸运格子编号 BYTE
def GetGridNumMaxLimitInfo(self): return self.attrTuple[16] # 格子最大产出次数限制,{"格子":最大可产出次数, ...} dict
- def GetNotifyGridNumList(self): return self.attrTuple[17] # 需要额外广播的格子 list
- def GetNotifyKeyDict(self): return self.attrTuple[18] # 广播key dict
- def GetAwardMoneyType(self): return self.attrTuple[19] # 额外奖励货币类型 BYTE
- def GetAwardMoneyValue(self): return self.attrTuple[20] # 单次奖励货币数 WORD
- def GetWishReset(self): return self.attrTuple[21] # 心愿重置规则 BYTE
- def GetWishLibSelect(self): return self.attrTuple[22] # 心愿库选择数 dict
- def GetWishLibPubFreeCnt(self): return self.attrTuple[23] # 心愿库公共免费次数 dict
- def GetWishLibCard(self): return self.attrTuple[24] # 心愿库心愿卡 dict
+ def GetRecordGridNumList(self): return self.attrTuple[17] # 需要记录产出的格子 list
+ def GetNotifyGridNumList(self): return self.attrTuple[18] # 需要额外广播的格子 list
+ def GetNotifyKeyDict(self): return self.attrTuple[19] # 广播key dict
+ def GetAwardMoneyType(self): return self.attrTuple[20] # 额外奖励货币类型 BYTE
+ def GetAwardMoneyValue(self): return self.attrTuple[21] # 单次奖励货币数 WORD
+ def GetAwardItemInfo(self): return self.attrTuple[22] # 单次额外奖励道具,物品ID|个数 list
+ def GetWishReset(self): return self.attrTuple[23] # 心愿重置规则 BYTE
+ def GetWishLibSelect(self): return self.attrTuple[24] # 心愿库选择数 dict
+ def GetWishLibPubFreeCnt(self): return self.attrTuple[25] # 心愿库公共免费次数 dict
+ def GetWishLibCard(self): return self.attrTuple[26] # 心愿库心愿卡 dict
# 寻宝产出库表
class IPY_TreasureHouse():
@@ -3912,27 +3940,8 @@
def GetNeedValue(self): return self.attrTuple[3] # 完成任务所需值 DWORD
def GetAwardItemList(self): return self.attrTuple[4] # 任务奖励列表[[物品ID,个数,是否拍品], ...] list
-# 登录活动奖励时间表新
-class IPY_ActLoginNew():
-
- def __init__(self):
- self.attrTuple = None
- return
-
- def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
- def GetStartDate(self): return self.attrTuple[1] # 开启日期 char
- def GetEndDate(self): return self.attrTuple[2] # 结束日期 char
- def GetRelateFuncID(self): return self.attrTuple[3] # 关联功能ID WORD
- def GetFuncActDays(self): return self.attrTuple[4] # 功能活动天数 BYTE
- def GetFuncLoop(self): return self.attrTuple[5] # 功能是否循环 BYTE
- def GetLVLimit(self): return self.attrTuple[6] # 限制等级 WORD
- def GetRepSignCostMoneyInfo(self): return self.attrTuple[7] # 补签消耗货币类型数量 list
- def GetTemplateID(self): return self.attrTuple[8] # 登录奖励模板编号 BYTE
- def GetAwardExCTGID(self): return self.attrTuple[9] # 扩展奖励礼包充值ID WORD
- def GetActZhanlingType(self): return self.attrTuple[10] # 关联活动战令类型 WORD
-
-# 登录活动奖励模板表新
-class IPY_ActLoginNewAward():
+# 活动签到奖励表
+class IPY_ActSignAward():
def __init__(self):
self.attrTuple = None
@@ -3940,8 +3949,59 @@
def GetTemplateID(self): return self.attrTuple[0] # 模板ID BYTE
def GetDayNum(self): return self.attrTuple[1] # 第X天从1开始 BYTE
- def GetLoginAwardItemList(self): return self.attrTuple[2] # 奖励列表[[物品ID,个数,是否拍品], ...] list
- def GetLoginAwardItemListEx(self): return self.attrTuple[3] # 扩展奖励列表[[物品ID,个数,是否拍品], ...] list
+ def GetSignAwardItemList(self): return self.attrTuple[2] # 奖励列表[[物品ID,个数], ...] list
+
+# 活动排行奖励表
+class IPY_ActBillboardAward():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetTemplateID(self): return self.attrTuple[0] # 模板ID DWORD
+ def GetRankA(self): return self.attrTuple[1] # 名次A WORD
+ def GetRankB(self): return self.attrTuple[2] # 至名次B WORD
+ def GetNeedValue(self): return self.attrTuple[3] # 至少所需值 float
+ def GetAwardItemList(self): return self.attrTuple[4] # 奖励物品列表[[物品ID,个数], ...] list
+
+# 武将登场时间表
+class IPY_ActHeroAppear():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD
+ def GetPlatformList(self): return self.attrTuple[1] # 活动平台列表["平台A", "平台A", ...],配[]代表所有 list
+ def GetServerIDList(self): return self.attrTuple[2] # 服务器ID列表 list
+ def GetActNum(self): return self.attrTuple[3] # 活动分组编号, 活动类型 * 10 + 不同界面编号 BYTE
+ def GetStartDate(self): return self.attrTuple[4] # 开启日期 char
+ def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
+ def GetActHeroIDList(self): return self.attrTuple[6] # 登场武将ID列表 list
+ def GetActTreasureType(self): return self.attrTuple[7] # 招募寻宝类型 WORD
+ def GetStarGiftTempID(self): return self.attrTuple[8] # 专属升星礼包模板 BYTE
+ def GetSkinCTGIDList(self): return self.attrTuple[9] # 时装充值ID列表 list
+ def GetGiftCTGIDList(self): return self.attrTuple[10] # 礼包充值ID列表 list
+ def GetGiftShopType(self): return self.attrTuple[11] # 礼包商店类型 WORD
+ def GetExShopType(self): return self.attrTuple[12] # 兑换商店类型 WORD
+ def GetExShopRecycleMail(self): return self.attrTuple[13] # 兑换货币回收邮件 char
+ def GetSignTempID(self): return self.attrTuple[14] # 签到奖励模板 WORD
+ def GetBillTempID(self): return self.attrTuple[15] # 排行奖励模板 WORD
+ def GetBillAwardMail(self): return self.attrTuple[16] # 榜单奖励发放邮件 char
+
+# 升星计划奖励表
+class IPY_ActHeroAppearStar():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetStarTempID(self): return self.attrTuple[0] # 模板ID BYTE
+ def GetNeedStar(self): return self.attrTuple[1] # 所需星 BYTE
+ def GetAwardIndex(self): return self.attrTuple[2] # 奖励记录索引 BYTE
+ def GetFreeAwardItemList(self): return self.attrTuple[3] # 免费奖励物品信息列表[[物品ID,个数], ...] list
+ def GetStarGiftCTGID(self): return self.attrTuple[4] # 星级礼包充值ID WORD
+ def GetHeroGiftItemInfo(self): return self.attrTuple[5] # 登场武将额外专属奖励信息{"武将ID":[[专属物品ID,个数], ...], ...} dict
# 装备位背包索引映射表
class IPY_EquipPlaceIndexMap():
@@ -4446,8 +4506,10 @@
self.__LoadFileData("ActBuyCountGift", onlyCheck)
self.__LoadFileData("ActTask", onlyCheck)
self.__LoadFileData("ActTaskTemp", onlyCheck)
- self.__LoadFileData("ActLoginNew", onlyCheck)
- self.__LoadFileData("ActLoginNewAward", onlyCheck)
+ self.__LoadFileData("ActSignAward", onlyCheck)
+ self.__LoadFileData("ActBillboardAward", onlyCheck)
+ self.__LoadFileData("ActHeroAppear", onlyCheck)
+ self.__LoadFileData("ActHeroAppearStar", onlyCheck)
self.__LoadFileData("EquipPlaceIndexMap", onlyCheck)
self.__LoadFileData("EquipShenAttr", onlyCheck)
self.__LoadFileData("EquipShenEvolve", onlyCheck)
@@ -5684,19 +5746,33 @@
self.CheckLoadData("ActTaskTemp")
return self.ipyActTaskTempCache[index]
- def GetActLoginNewCount(self):
- self.CheckLoadData("ActLoginNew")
- return self.ipyActLoginNewLen
- def GetActLoginNewByIndex(self, index):
- self.CheckLoadData("ActLoginNew")
- return self.ipyActLoginNewCache[index]
+ def GetActSignAwardCount(self):
+ self.CheckLoadData("ActSignAward")
+ return self.ipyActSignAwardLen
+ def GetActSignAwardByIndex(self, index):
+ self.CheckLoadData("ActSignAward")
+ return self.ipyActSignAwardCache[index]
- def GetActLoginNewAwardCount(self):
- self.CheckLoadData("ActLoginNewAward")
- return self.ipyActLoginNewAwardLen
- def GetActLoginNewAwardByIndex(self, index):
- self.CheckLoadData("ActLoginNewAward")
- return self.ipyActLoginNewAwardCache[index]
+ def GetActBillboardAwardCount(self):
+ self.CheckLoadData("ActBillboardAward")
+ return self.ipyActBillboardAwardLen
+ def GetActBillboardAwardByIndex(self, index):
+ self.CheckLoadData("ActBillboardAward")
+ return self.ipyActBillboardAwardCache[index]
+
+ def GetActHeroAppearCount(self):
+ self.CheckLoadData("ActHeroAppear")
+ return self.ipyActHeroAppearLen
+ def GetActHeroAppearByIndex(self, index):
+ self.CheckLoadData("ActHeroAppear")
+ return self.ipyActHeroAppearCache[index]
+
+ def GetActHeroAppearStarCount(self):
+ self.CheckLoadData("ActHeroAppearStar")
+ return self.ipyActHeroAppearStarLen
+ def GetActHeroAppearStarByIndex(self, index):
+ self.CheckLoadData("ActHeroAppearStar")
+ return self.ipyActHeroAppearStarCache[index]
def GetEquipPlaceIndexMapCount(self):
self.CheckLoadData("EquipPlaceIndexMap")
--
Gitblit v1.8.0