From e65a33757a3ca9fad94f05f8309654585902d097 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 30 十月 2025 19:50:48 +0800
Subject: [PATCH] 326 【武将】阵容推荐-服务端

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |  401 ++++++++++++--------------------------------------------
 1 files changed, 87 insertions(+), 314 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 06e009f..ad3240d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -133,7 +133,7 @@
                         ("BYTE", "TriggerWay3", 0),
                         ("BYTE", "TriggerSrc3", 0),
                         ("WORD", "CoolDownTime", 0),
-                        ("WORD", "BuffStateLimit", 0),
+                        ("list", "BuffStateLimit", 0),
                         ("BYTE", "CurBuffState", 0),
                         ("WORD", "LastTime", 0),
                         ("BYTE", "LayerCnt", 0),
@@ -141,7 +141,6 @@
                         ("DWORD", "BuffRepeat", 0),
                         ("BYTE", "DispersedLimit", 0),
                         ("DWORD", "FightPower", 0),
-                        ("char", "SkillMotionName", 0),
                         ),
 
                 "Hero":(
@@ -227,6 +226,7 @@
                         ("DWORD", "BookStarAddPer", 0),
                         ("DWORD", "BookBreakLVAddPer", 0),
                         ("list", "DismissReturnItems", 0),
+                        ("list", "RecommendAwardMoney", 0),
                         ),
 
                 "HeroQualityBreak":(
@@ -247,6 +247,11 @@
                         ("DWORD", "Quality", 1),
                         ("DWORD", "HeroLV", 1),
                         ("list", "UPCostItem", 0),
+                        ),
+
+                "LineupRecommend":(
+                        ("DWORD", "RecommendID", 1),
+                        ("list", "HeroIDList", 0),
                         ),
 
                 "PlayerAttr":(
@@ -477,16 +482,6 @@
                         ("WORD", "EatPerCount", 0),
                         ("list", "LVUpCostItemInfo", 0),
                         ("DWORD", "ActivateSkillID", 0),
-                        ),
-
-                "GodWeapon":(
-                        ("WORD", "Type", 1),
-                        ("WORD", "LV", 1),
-                        ("DWORD", "Exp", 0),
-                        ("list", "AttrType", 0),
-                        ("list", "AttrNum", 0),
-                        ("DWORD", "SkillID", 0),
-                        ("char", "SysMark", 0),
                         ),
 
                 "FuncConfig":(
@@ -1073,19 +1068,11 @@
                         ),
 
                 "Success":(
-                        ("DWORD", "ID", 1),
-                        ("WORD", "Type", 0),
+                        ("DWORD", "SuccID", 0),
+                        ("WORD", "SuccType", 1),
                         ("DWORD", "NeedCnt", 0),
                         ("list", "Condition", 0),
-                        ("list", "PreSuccess", 0),
-                        ("dict", "AwardItem", 0),
-                        ("dict", "AwardItem2", 0),
-                        ("dict", "Money", 0),
-                        ("DWORD", "Exp", 0),
-                        ("dict", "AwardAttr", 0),
-                        ("DWORD", "RedPacketID", 0),
-                        ("DWORD", "MagicWeaponID", 0),
-                        ("DWORD", "MagicWeaponExp", 0),
+                        ("list", "AwardItemList", 0),
                         ),
 
                 "TongTianLV":(
@@ -1135,10 +1122,6 @@
                         ("WORD", "OldPrice", 0),
                         ),
 
-                "AuctionItem":(
-                        ("DWORD", "AuctionItemID", 1),
-                        ),
-
                 "VipPrivilege":(
                         ("DWORD", "VIPPriID", 1),
                         ("DWORD", "VIP0", 0),
@@ -1162,25 +1145,16 @@
                 "Store":(
                         ("DWORD", "ID", 1),
                         ("DWORD", "ShopType", 0),
-                        ("BYTE", "OperationActionShop", 0),
                         ("DWORD", "ItemID", 0),
                         ("WORD", "ItemCnt", 0),
-                        ("BYTE", "IsBind", 0),
                         ("list", "ItemListEx", 0),
-                        ("DWORD", "MainItemID", 0),
-                        ("list", "JobItem", 0),
-                        ("BYTE", "RefreshLimit", 0),
-                        ("BYTE", "RefreshType", 0),
-                        ("list", "LimitVIPLV", 0),
-                        ("DWORD", "LimitLV", 0),
-                        ("list", "LimitCnt", 0),
-                        ("DWORD", "ServerLimitCnt", 0),
+                        ("BYTE", "ResetType", 0),
+                        ("DWORD", "LimitCnt", 0),
                         ("BYTE", "MoneyType", 0),
                         ("DWORD", "MoneyNum", 0),
                         ("DWORD", "MoneyOriginal", 0),
-                        ("DWORD", "LimitValue", 0),
-                        ("char", "NotifyMark", 0),
-                        ("char", "MailKey", 0),
+                        ("BYTE", "UnlockType", 0),
+                        ("DWORD", "UnlockValue", 0),
                         ),
 
                 "ActSpringSale":(
@@ -1228,19 +1202,6 @@
                         ("DWORD", "NPCID", 1),
                         ("WORD", "PerPlayerMoneyAward", 0),
                         ("list", "PersonFirstKillAward", 0),
-                        ),
-
-                "FamilyRedPack":(
-                        ("WORD", "ID", 1),
-                        ("WORD", "GetType", 0),
-                        ("WORD", "MoneyNum", 0),
-                        ("BYTE", "MoneyType", 0),
-                        ("BYTE", "PacketCnt", 0),
-                        ),
-
-                "ActFeastRedPacketSucc":(
-                        ("BYTE", "FeastDay", 1),
-                        ("list", "FeastSuccIDList", 0),
                         ),
 
                 "NPCShow":(
@@ -1296,25 +1257,12 @@
                         ("BYTE", "CanBreakCollect", 0),
                         ),
 
-                "TreasureNPC":(
-                        ("DWORD", "NPCID", 1),
-                        ("dict", "AttackCountDropWeightInfo", 0),
-                        ("list", "AttackDropWeightList", 0),
-                        ("list", "AttackDropWeightListEx", 0),
-                        ("BYTE", "DropCountEx", 0),
-                        ("BYTE", "AlchemyDiffLV", 0),
-                        ("char", "NotDropNotify", 0),
-                        ),
-
                 "Chests":(
                         ("DWORD", "ChestsItemID", 1),
                         ("DWORD", "CostItemID", 0),
                         ("BYTE", "CostItemCount", 0),
-                        ("WORD", "CostGold", 0),
-                        ("BYTE", "ShowType", 0),
-                        ("BYTE", "IsBind", 0),
-                        ("BYTE", "AucionItemCanSell", 0),
-                        ("list", "AucionItemDiffSellIDList", 0),
+                        ("BYTE", "CostMoneyType", 0),
+                        ("WORD", "CostMoneyValue", 0),
                         ),
 
                 "ChestsAward":(
@@ -1346,19 +1294,6 @@
                         ("DWORD", "LVExp", 0),
                         ("DWORD", "AddMinAtk", 0),
                         ("DWORD", "AddMaxAtk", 0),
-                        ),
-
-                "OSCBillRankAward":(
-                        ("BYTE", "OSCBillType", 1),
-                        ("BYTE", "RankA", 0),
-                        ("BYTE", "RankB", 0),
-                        ("dict", "RankAward", 0),
-                        ),
-
-                "OSCBillTagAward":(
-                        ("BYTE", "OSCBillType", 1),
-                        ("WORD", "TagCondition", 0),
-                        ("dict", "TagAward", 0),
                         ),
 
                 "LoginDayAward":(
@@ -1479,6 +1414,7 @@
                         ("list", "GridItemRateList1", 0),
                         ("list", "GridItemRateList2", 0),
                         ("dict", "GridItemRateList3", 0),
+                        ("list", "GridItemRateList4", 0),
                         ("dict", "LuckyItemRateInfo", 0),
                         ),
 
@@ -2234,11 +2170,6 @@
                         ("list", "AwardItemList", 0),
                         ),
 
-                "MysteryShop":(
-                        ("list", "LVRange", 0),
-                        ("DWORD", "GoodsID", 0),
-                        ),
-
                 "EquipPlaceIndexMap":(
                         ("DWORD", "GridIndex", 0),
                         ("DWORD", "ClassLV", 1),
@@ -2321,14 +2252,6 @@
                         ("BYTE", "ItemGroupNum", 1),
                         ("DWORD", "ItemWeight", 0),
                         ("list", "ItemList", 0),
-                        ),
-
-                "FamilyZhenfa":(
-                        ("BYTE", "ZhenfaType", 1),
-                        ("WORD", "ZhenfaLV", 1),
-                        ("DWORD", "LVUpNeedExp", 0),
-                        ("list", "LVAttrType", 0),
-                        ("list", "LVAttrValue", 0),
                         ),
 
                 "ItemWashMax":(
@@ -2440,6 +2363,15 @@
                         ("list", "EquipColorRateList", 0),
                         ("list", "EquipColorRateList1", 0),
                         ("list", "EquipColorRateList2", 0),
+                        ),
+
+                "LLMJ":(
+                        ("BYTE", "MJLV", 1),
+                        ("DWORD", "CostWarhammer", 0),
+                        ("BYTE", "ExpAddPer", 0),
+                        ("DWORD", "ExpExUpper", 0),
+                        ("BYTE", "DecomposeAddPer", 0),
+                        ("DWORD", "DecomposeExUpper", 0),
                         ),
 
                 "GoldRushCamp":(
@@ -2600,15 +2532,14 @@
     def GetTriggerWay3(self): return self.attrTuple[28] # 触发方式 BYTE
     def GetTriggerSrc3(self): return self.attrTuple[29] # 有效来源 BYTE
     def GetCoolDownTime(self): return self.attrTuple[30] # 技能冷却时间 WORD
-    def GetBuffStateLimit(self): return self.attrTuple[31] # Buff状态限制组 WORD
+    def GetBuffStateLimit(self): return self.attrTuple[31] # Buff状态限制组 list
     def GetCurBuffState(self): return self.attrTuple[32] # Buff状态值 BYTE
     def GetLastTime(self): return self.attrTuple[33] # 持续时间 WORD
     def GetLayerCnt(self): return self.attrTuple[34] # Buff层数 BYTE
     def GetLayerMax(self): return self.attrTuple[35] # 最大层数 BYTE
     def GetBuffRepeat(self): return self.attrTuple[36] # Buff叠加规则 DWORD
     def GetDispersedLimit(self): return self.attrTuple[37] # 驱散限制 BYTE
-    def GetFightPower(self): return self.attrTuple[38] # 技能战斗力 DWORD
-    def GetSkillMotionName(self): return self.attrTuple[39] # 技能动作名 char
+    def GetFightPower(self): return self.attrTuple[38] # 技能战斗力 DWORD
 
 # 武将表
 class IPY_Hero():
@@ -2733,7 +2664,8 @@
     def GetBookInitAddPer(self): return self.attrTuple[8] #  图鉴初始加成 DWORD
     def GetBookStarAddPer(self): return self.attrTuple[9] #  图鉴每星级加成 DWORD
     def GetBookBreakLVAddPer(self): return self.attrTuple[10] #  图鉴每突破等级加成 DWORD
-    def GetDismissReturnItems(self): return self.attrTuple[11] #  遣散每星返还道具 [[物品ID,个数], ...] list
+    def GetDismissReturnItems(self): return self.attrTuple[11] #  遣散每星返还道具 [[物品ID,个数], ...] list
+    def GetRecommendAwardMoney(self): return self.attrTuple[12] #  阵容推荐激活奖励货币 类型|值 list
 
 # 武将品质突破表
 class IPY_HeroQualityBreak():
@@ -2769,6 +2701,16 @@
     def GetQuality(self): return self.attrTuple[0] # 品质 DWORD
     def GetHeroLV(self): return self.attrTuple[1] # 武将等级 DWORD
     def GetUPCostItem(self): return self.attrTuple[2] #  升级到下级消耗道具 list
+
+# 推荐阵容表
+class IPY_LineupRecommend():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetRecommendID(self): return self.attrTuple[0] # 推荐ID DWORD
+    def GetHeroIDList(self): return self.attrTuple[1] #  推荐武将ID列表 list
 
 # 属性条目表
 class IPY_PlayerAttr():
@@ -3094,21 +3036,6 @@
     def GetEatPerCount(self): return self.attrTuple[8] # 每次培养消耗x个 WORD
     def GetLVUpCostItemInfo(self): return self.attrTuple[9] # 突破等级道具ID|个数 list
     def GetActivateSkillID(self): return self.attrTuple[10] # 激活技能ID DWORD
-
-# 神兵表
-class IPY_GodWeapon():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetType(self): return self.attrTuple[0] # 神兵类型 WORD
-    def GetLV(self): return self.attrTuple[1] # 等级 WORD
-    def GetExp(self): return self.attrTuple[2] # DWORD
-    def GetAttrType(self): return self.attrTuple[3] # 属性类型 list
-    def GetAttrNum(self): return self.attrTuple[4] # 属性值 list
-    def GetSkillID(self): return self.attrTuple[5] # 激活技能ID DWORD
-    def GetSysMark(self): return self.attrTuple[6] # 系统提示 char
 
 # 功能配置表格
 class IPY_FuncConfig():
@@ -3975,19 +3902,11 @@
         self.attrTuple = None
         return
         
-    def GetID(self): return self.attrTuple[0] # 成就ID DWORD
-    def GetType(self): return self.attrTuple[1] # 成就类型 WORD
+    def GetSuccID(self): return self.attrTuple[0] # 成就ID DWORD
+    def GetSuccType(self): return self.attrTuple[1] # 成就类型 WORD
     def GetNeedCnt(self): return self.attrTuple[2] # 需要数量 DWORD
     def GetCondition(self): return self.attrTuple[3] # 辅助条件 list
-    def GetPreSuccess(self): return self.attrTuple[4] # 需要达成前置成就 list
-    def GetAwardItem(self): return self.attrTuple[5] # 奖励物品列表 dict
-    def GetAwardItem2(self): return self.attrTuple[6] # 通行证奖励物品列表 dict
-    def GetMoney(self): return self.attrTuple[7] # 金钱 dict
-    def GetExp(self): return self.attrTuple[8] # 经验 DWORD
-    def GetAwardAttr(self): return self.attrTuple[9] # 奖励属性 dict
-    def GetRedPacketID(self): return self.attrTuple[10] # 红包ID DWORD
-    def GetMagicWeaponID(self): return self.attrTuple[11] # 法宝ID DWORD
-    def GetMagicWeaponExp(self): return self.attrTuple[12] # 法宝升级经验 DWORD
+    def GetAwardItemList(self): return self.attrTuple[4] # 奖励物品列表 list
 
 # 通天令等级表
 class IPY_TongTianLV():
@@ -4066,15 +3985,6 @@
     def GetPrice(self): return self.attrTuple[2] # 礼包现价 WORD
     def GetOldPrice(self): return self.attrTuple[3] # 礼包原价 WORD
 
-# 拍卖物品表
-class IPY_AuctionItem():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetAuctionItemID(self): return self.attrTuple[0] # DWORD
-
 # VIP特权表
 class IPY_VipPrivilege():
     
@@ -4109,25 +4019,16 @@
         
     def GetID(self): return self.attrTuple[0] # ID DWORD
     def GetShopType(self): return self.attrTuple[1] # 商店类型 DWORD
-    def GetOperationActionShop(self): return self.attrTuple[2] # 是否运营活动商店 BYTE
-    def GetItemID(self): return self.attrTuple[3] # 物品ID DWORD
-    def GetItemCnt(self): return self.attrTuple[4] # 物品数量 WORD
-    def GetIsBind(self): return self.attrTuple[5] # 是否绑定 BYTE
-    def GetItemListEx(self): return self.attrTuple[6] # 扩展物品列表[[物品ID,个数,是否绑定],...] list
-    def GetMainItemID(self): return self.attrTuple[7] # 标的物品ID DWORD
-    def GetJobItem(self): return self.attrTuple[8] # 职业替换物品 list
-    def GetRefreshLimit(self): return self.attrTuple[9] # 是否限制刷新限购次数,即是否永久限购,包含活动也不重置 BYTE
-    def GetRefreshType(self): return self.attrTuple[10] # 刷新类型 0-不重置,1-onWeek0点,2-onWeek5点,3-OnDay0点,4-OnDay5点 BYTE
-    def GetLimitVIPLV(self): return self.attrTuple[11] # VIP限制 list
-    def GetLimitLV(self): return self.attrTuple[12] # 等级限制 DWORD
-    def GetLimitCnt(self): return self.attrTuple[13] # 个人限制数量 list
-    def GetServerLimitCnt(self): return self.attrTuple[14] # 全服限制数量 DWORD
-    def GetMoneyType(self): return self.attrTuple[15] # 金钱类型 BYTE
-    def GetMoneyNum(self): return self.attrTuple[16] # 金钱数量 DWORD
-    def GetMoneyOriginal(self): return self.attrTuple[17] # 原价 DWORD
-    def GetLimitValue(self): return self.attrTuple[18] # 限制条件 DWORD
-    def GetNotifyMark(self): return self.attrTuple[19] # 广播提示 char
-    def GetMailKey(self): return self.attrTuple[20] # 背包不足时邮件KEY char
+    def GetItemID(self): return self.attrTuple[2] # 物品ID DWORD
+    def GetItemCnt(self): return self.attrTuple[3] # 物品数量 WORD
+    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
 
 # 限时特惠表
 class IPY_ActSpringSale():
@@ -4200,29 +4101,6 @@
     def GetNPCID(self): return self.attrTuple[0] # ID DWORD
     def GetPerPlayerMoneyAward(self): return self.attrTuple[1] #  首杀全服玩家奖励灵石额度/人 WORD
     def GetPersonFirstKillAward(self): return self.attrTuple[2] #  个人首次击杀奖励 [[物品ID,个数,是否拍品], ...] list
-
-# 仙盟红包表
-class IPY_FamilyRedPack():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetID(self): return self.attrTuple[0] # ID WORD
-    def GetGetType(self): return self.attrTuple[1] # 获得途径 WORD
-    def GetMoneyNum(self): return self.attrTuple[2] # 红包额度 WORD
-    def GetMoneyType(self): return self.attrTuple[3] # 金钱类型 BYTE
-    def GetPacketCnt(self): return self.attrTuple[4] # 红包个数 BYTE
-
-# 节日红包每日成就表
-class IPY_ActFeastRedPacketSucc():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetFeastDay(self): return self.attrTuple[0] # 节日第几天 BYTE
-    def GetFeastSuccIDList(self): return self.attrTuple[1] # 节日成就ID列表 list
 
 # NPC秀表
 class IPY_NPCShow():
@@ -4302,21 +4180,6 @@
     def GetNotifyCollectResult(self): return self.attrTuple[10] # 是否通知采集结果 BYTE
     def GetCanBreakCollect(self): return self.attrTuple[11] # 被攻击是否打断采集 BYTE
 
-# 宝箱怪表
-class IPY_TreasureNPC():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetNPCID(self): return self.attrTuple[0] # 宝箱怪NPCID DWORD
-    def GetAttackCountDropWeightInfo(self): return self.attrTuple[1] # 攻击次数对应掉落权重饼图 {次数:[[权重, [物品ID,个数,是否拍品]], ...], ...} dict
-    def GetAttackDropWeightList(self): return self.attrTuple[2] # 常规攻击权重饼图 [[权重, [物品ID,个数,是否拍品]], ...] list
-    def GetAttackDropWeightListEx(self): return self.attrTuple[3] # 额外掉落权重饼图库,每次攻击都会掉落  [[权重, [物品ID,个数,是否拍品]], ...] list
-    def GetDropCountEx(self): return self.attrTuple[4] # 额外库执行次数 BYTE
-    def GetAlchemyDiffLV(self): return self.attrTuple[5] # 过滤炼丹等级差,0-不过滤,>0过滤大于自身炼丹等级X级的物品 BYTE
-    def GetNotDropNotify(self): return self.attrTuple[6] # 没有掉落时提示信息 char
-
 # 宝箱表开启
 class IPY_Chests():
     
@@ -4327,11 +4190,8 @@
     def GetChestsItemID(self): return self.attrTuple[0] # 宝箱物品ID DWORD
     def GetCostItemID(self): return self.attrTuple[1] # 消耗物品ID DWORD
     def GetCostItemCount(self): return self.attrTuple[2] # 消耗物品个数 BYTE
-    def GetCostGold(self): return self.attrTuple[3] # 消耗仙玉 WORD
-    def GetShowType(self): return self.attrTuple[4] # 前端表现类型0-无表现, >0有表现需同步结果,具体类型前端自定义 BYTE
-    def GetIsBind(self): return self.attrTuple[5] # 开出物品是否绑定 BYTE
-    def GetAucionItemCanSell(self): return self.attrTuple[6] # 开出拍品可否上架集市 BYTE
-    def GetAucionItemDiffSellIDList(self): return self.attrTuple[7] # 可否上架差异拍品ID列表,即可上架代表不可上架的拍品ID列表,不可上架代表可上架的拍品ID列表 list
+    def GetCostMoneyType(self): return self.attrTuple[3] # 开启消耗货币类型 BYTE
+    def GetCostMoneyValue(self): return self.attrTuple[4] # 消耗货币 WORD
 
 # 宝箱表产出表
 class IPY_ChestsAward():
@@ -4373,29 +4233,6 @@
     def GetLVExp(self): return self.attrTuple[2] # 除经验点总经验外升级还需的经验 DWORD
     def GetAddMinAtk(self): return self.attrTuple[3] # 增加最小攻击 DWORD
     def GetAddMaxAtk(self): return self.attrTuple[4] # 增加最大攻击 DWORD
-
-# 全民冲榜排行奖励表
-class IPY_OSCBillRankAward():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetOSCBillType(self): return self.attrTuple[0] # 冲榜类型 BYTE
-    def GetRankA(self): return self.attrTuple[1] # 排名A BYTE
-    def GetRankB(self): return self.attrTuple[2] # 至排名B BYTE
-    def GetRankAward(self): return self.attrTuple[3] # 排名奖励 {"职业":[[物品ID,个数],...], ...} dict
-
-# 全民冲榜达成奖励表
-class IPY_OSCBillTagAward():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetOSCBillType(self): return self.attrTuple[0] # 冲榜类型 BYTE
-    def GetTagCondition(self): return self.attrTuple[1] # 目标条件值 WORD
-    def GetTagAward(self): return self.attrTuple[2] # 目标奖励 {"职业":[[物品ID,个数],...], ...} dict
 
 # 七天登录奖励表
 class IPY_LoginDayAward():
@@ -4571,7 +4408,8 @@
     def GetGridItemRateList1(self): return self.attrTuple[6] # 常规产出格子编号饼图 [[概率, 格子编号], ...] list
     def GetGridItemRateList2(self): return self.attrTuple[7] # 每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
     def GetGridItemRateList3(self): return self.attrTuple[8] # 第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
-    def GetLuckyItemRateInfo(self): return self.attrTuple[9] # 幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
+    def GetGridItemRateList4(self): return self.attrTuple[9] # 第x次x抽必出 list
+    def GetLuckyItemRateInfo(self): return self.attrTuple[10] # 幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
 
 # 寻宝物品库
 class IPY_TreasureItemLib():
@@ -5750,16 +5588,6 @@
     def GetCTGAtleast(self): return self.attrTuple[3] # 至少充值RMB float
     def GetAwardItemList(self): return self.attrTuple[4] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
 
-# 神秘商店表
-class IPY_MysteryShop():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetLVRange(self): return self.attrTuple[0] # 等级范围 list
-    def GetGoodsID(self): return self.attrTuple[1] # 商城表ID DWORD
-
 # 装备位背包索引映射表
 class IPY_EquipPlaceIndexMap():
     
@@ -5893,19 +5721,6 @@
     def GetItemGroupNum(self): return self.attrTuple[0] # 物品组编号 BYTE
     def GetItemWeight(self): return self.attrTuple[1] # 随机权重 DWORD
     def GetItemList(self): return self.attrTuple[2] # 物品列表[[物品ID,个数,是否拍品], ...] list
-
-# 仙盟阵法表
-class IPY_FamilyZhenfa():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetZhenfaType(self): return self.attrTuple[0] #  阵法类型 BYTE
-    def GetZhenfaLV(self): return self.attrTuple[1] #  阵法等级 WORD
-    def GetLVUpNeedExp(self): return self.attrTuple[2] # 升下一级所需经验 DWORD
-    def GetLVAttrType(self): return self.attrTuple[3] # 累计总属性类型 list
-    def GetLVAttrValue(self): return self.attrTuple[4] # 累计总属性值 list
 
 # 装备洗练等级上限
 class IPY_ItemWashMax():
@@ -6098,6 +5913,20 @@
     def GetEquipColorRateList1(self): return self.attrTuple[4] # 精英产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
     def GetEquipColorRateList2(self): return self.attrTuple[5] # boss产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
 
+# 历练秘笈
+class IPY_LLMJ():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetMJLV(self): return self.attrTuple[0] # 秘笈等级 BYTE
+    def GetCostWarhammer(self): return self.attrTuple[1] # 消耗战锤 DWORD
+    def GetExpAddPer(self): return self.attrTuple[2] # 经验加成比例,百分比 BYTE
+    def GetExpExUpper(self): return self.attrTuple[3] # 经验加成每日上限 DWORD
+    def GetDecomposeAddPer(self): return self.attrTuple[4] # 分解加成比例,百分比 BYTE
+    def GetDecomposeExUpper(self): return self.attrTuple[5] # 结晶加成每日上限 DWORD
+
 # 淘金营地表
 class IPY_GoldRushCamp():
     
@@ -6217,6 +6046,7 @@
         self.__LoadFileData("HeroQualityBreak", onlyCheck)
         self.__LoadFileData("HeroQualityAwake", onlyCheck)
         self.__LoadFileData("HeroQualityLV", onlyCheck)
+        self.__LoadFileData("LineupRecommend", onlyCheck)
         self.__LoadFileData("PlayerAttr", onlyCheck)
         self.__LoadFileData("FightPowerRatio", onlyCheck)
         self.__LoadFileData("MainChapter", onlyCheck)
@@ -6236,7 +6066,6 @@
         self.__LoadFileData("Realm", onlyCheck)
         self.__LoadFileData("RealmLVUPTask", onlyCheck)
         self.__LoadFileData("LianTi", onlyCheck)
-        self.__LoadFileData("GodWeapon", onlyCheck)
         self.__LoadFileData("FuncConfig", onlyCheck)
         self.__LoadFileData("FuncOpenLV", onlyCheck)
         self.__LoadFileData("ItemCompound", onlyCheck)
@@ -6299,7 +6128,6 @@
         self.__LoadFileData("TreasureUp", onlyCheck)
         self.__LoadFileData("SignIn", onlyCheck)
         self.__LoadFileData("VIPAward", onlyCheck)
-        self.__LoadFileData("AuctionItem", onlyCheck)
         self.__LoadFileData("VipPrivilege", onlyCheck)
         self.__LoadFileData("Store", onlyCheck)
         self.__LoadFileData("ActSpringSale", onlyCheck)
@@ -6307,19 +6135,14 @@
         self.__LoadFileData("DailyLivenessReward", onlyCheck)
         self.__LoadFileData("BOSSInfo", onlyCheck)
         self.__LoadFileData("BOSSFirstKill", onlyCheck)
-        self.__LoadFileData("FamilyRedPack", onlyCheck)
-        self.__LoadFileData("ActFeastRedPacketSucc", onlyCheck)
         self.__LoadFileData("NPCShow", onlyCheck)
         self.__LoadFileData("MapRefreshNPC", onlyCheck)
         self.__LoadFileData("RuneCompound", onlyCheck)
         self.__LoadFileData("ResourcesBack", onlyCheck)
         self.__LoadFileData("CollectNPC", onlyCheck)
-        self.__LoadFileData("TreasureNPC", onlyCheck)
         self.__LoadFileData("Chests", onlyCheck)
         self.__LoadFileData("ChestsAward", onlyCheck)
         self.__LoadFileData("VIPKillNPC", onlyCheck)
-        self.__LoadFileData("OSCBillRankAward", onlyCheck)
-        self.__LoadFileData("OSCBillTagAward", onlyCheck)
         self.__LoadFileData("LoginDayAward", onlyCheck)
         self.__LoadFileData("SpringSale", onlyCheck)
         self.__LoadFileData("OrderInfo", onlyCheck)
@@ -6416,7 +6239,6 @@
         self.__LoadFileData("LuckyTreasureTemplate", onlyCheck)
         self.__LoadFileData("CrossActCTGBillboardDabiao", onlyCheck)
         self.__LoadFileData("CrossActCTGBillboardOrder", onlyCheck)
-        self.__LoadFileData("MysteryShop", onlyCheck)
         self.__LoadFileData("EquipPlaceIndexMap", onlyCheck)
         self.__LoadFileData("EquipShenAttr", onlyCheck)
         self.__LoadFileData("EquipShenEvolve", onlyCheck)
@@ -6427,7 +6249,6 @@
         self.__LoadFileData("FamilyDonate", onlyCheck)
         self.__LoadFileData("FamilyZhenbaogeCut", onlyCheck)
         self.__LoadFileData("FamilyZhenbaogeItem", onlyCheck)
-        self.__LoadFileData("FamilyZhenfa", onlyCheck)
         self.__LoadFileData("ItemWashMax", onlyCheck)
         self.__LoadFileData("SkillElement", onlyCheck)
         self.__LoadFileData("LingGenEffect", onlyCheck)
@@ -6444,6 +6265,7 @@
         self.__LoadFileData("Xiangong", onlyCheck)
         self.__LoadFileData("TiandaoTree", onlyCheck)
         self.__LoadFileData("TreeLV", onlyCheck)
+        self.__LoadFileData("LLMJ", onlyCheck)
         self.__LoadFileData("GoldRushCamp", onlyCheck)
         self.__LoadFileData("GoldRushWorker", onlyCheck)
         self.__LoadFileData("GoldRushItem", onlyCheck)
@@ -6785,6 +6607,13 @@
         self.CheckLoadData("HeroQualityLV")
         return self.ipyHeroQualityLVCache[index]
 
+    def GetLineupRecommendCount(self):
+        self.CheckLoadData("LineupRecommend")
+        return self.ipyLineupRecommendLen
+    def GetLineupRecommendByIndex(self, index):
+        self.CheckLoadData("LineupRecommend")
+        return self.ipyLineupRecommendCache[index]
+
     def GetPlayerAttrCount(self):
         self.CheckLoadData("PlayerAttr")
         return self.ipyPlayerAttrLen
@@ -6917,13 +6746,6 @@
     def GetLianTiByIndex(self, index):
         self.CheckLoadData("LianTi")
         return self.ipyLianTiCache[index]
-
-    def GetGodWeaponCount(self):
-        self.CheckLoadData("GodWeapon")
-        return self.ipyGodWeaponLen
-    def GetGodWeaponByIndex(self, index):
-        self.CheckLoadData("GodWeapon")
-        return self.ipyGodWeaponCache[index]
 
     def GetFuncConfigCount(self):
         self.CheckLoadData("FuncConfig")
@@ -7359,13 +7181,6 @@
         self.CheckLoadData("VIPAward")
         return self.ipyVIPAwardCache[index]
 
-    def GetAuctionItemCount(self):
-        self.CheckLoadData("AuctionItem")
-        return self.ipyAuctionItemLen
-    def GetAuctionItemByIndex(self, index):
-        self.CheckLoadData("AuctionItem")
-        return self.ipyAuctionItemCache[index]
-
     def GetVipPrivilegeCount(self):
         self.CheckLoadData("VipPrivilege")
         return self.ipyVipPrivilegeLen
@@ -7415,20 +7230,6 @@
         self.CheckLoadData("BOSSFirstKill")
         return self.ipyBOSSFirstKillCache[index]
 
-    def GetFamilyRedPackCount(self):
-        self.CheckLoadData("FamilyRedPack")
-        return self.ipyFamilyRedPackLen
-    def GetFamilyRedPackByIndex(self, index):
-        self.CheckLoadData("FamilyRedPack")
-        return self.ipyFamilyRedPackCache[index]
-
-    def GetActFeastRedPacketSuccCount(self):
-        self.CheckLoadData("ActFeastRedPacketSucc")
-        return self.ipyActFeastRedPacketSuccLen
-    def GetActFeastRedPacketSuccByIndex(self, index):
-        self.CheckLoadData("ActFeastRedPacketSucc")
-        return self.ipyActFeastRedPacketSuccCache[index]
-
     def GetNPCShowCount(self):
         self.CheckLoadData("NPCShow")
         return self.ipyNPCShowLen
@@ -7464,13 +7265,6 @@
         self.CheckLoadData("CollectNPC")
         return self.ipyCollectNPCCache[index]
 
-    def GetTreasureNPCCount(self):
-        self.CheckLoadData("TreasureNPC")
-        return self.ipyTreasureNPCLen
-    def GetTreasureNPCByIndex(self, index):
-        self.CheckLoadData("TreasureNPC")
-        return self.ipyTreasureNPCCache[index]
-
     def GetChestsCount(self):
         self.CheckLoadData("Chests")
         return self.ipyChestsLen
@@ -7491,20 +7285,6 @@
     def GetVIPKillNPCByIndex(self, index):
         self.CheckLoadData("VIPKillNPC")
         return self.ipyVIPKillNPCCache[index]
-
-    def GetOSCBillRankAwardCount(self):
-        self.CheckLoadData("OSCBillRankAward")
-        return self.ipyOSCBillRankAwardLen
-    def GetOSCBillRankAwardByIndex(self, index):
-        self.CheckLoadData("OSCBillRankAward")
-        return self.ipyOSCBillRankAwardCache[index]
-
-    def GetOSCBillTagAwardCount(self):
-        self.CheckLoadData("OSCBillTagAward")
-        return self.ipyOSCBillTagAwardLen
-    def GetOSCBillTagAwardByIndex(self, index):
-        self.CheckLoadData("OSCBillTagAward")
-        return self.ipyOSCBillTagAwardCache[index]
 
     def GetLoginDayAwardCount(self):
         self.CheckLoadData("LoginDayAward")
@@ -8178,13 +7958,6 @@
         self.CheckLoadData("CrossActCTGBillboardOrder")
         return self.ipyCrossActCTGBillboardOrderCache[index]
 
-    def GetMysteryShopCount(self):
-        self.CheckLoadData("MysteryShop")
-        return self.ipyMysteryShopLen
-    def GetMysteryShopByIndex(self, index):
-        self.CheckLoadData("MysteryShop")
-        return self.ipyMysteryShopCache[index]
-
     def GetEquipPlaceIndexMapCount(self):
         self.CheckLoadData("EquipPlaceIndexMap")
         return self.ipyEquipPlaceIndexMapLen
@@ -8254,13 +8027,6 @@
     def GetFamilyZhenbaogeItemByIndex(self, index):
         self.CheckLoadData("FamilyZhenbaogeItem")
         return self.ipyFamilyZhenbaogeItemCache[index]
-
-    def GetFamilyZhenfaCount(self):
-        self.CheckLoadData("FamilyZhenfa")
-        return self.ipyFamilyZhenfaLen
-    def GetFamilyZhenfaByIndex(self, index):
-        self.CheckLoadData("FamilyZhenfa")
-        return self.ipyFamilyZhenfaCache[index]
 
     def GetItemWashMaxCount(self):
         self.CheckLoadData("ItemWashMax")
@@ -8374,6 +8140,13 @@
         self.CheckLoadData("TreeLV")
         return self.ipyTreeLVCache[index]
 
+    def GetLLMJCount(self):
+        self.CheckLoadData("LLMJ")
+        return self.ipyLLMJLen
+    def GetLLMJByIndex(self, index):
+        self.CheckLoadData("LLMJ")
+        return self.ipyLLMJCache[index]
+
     def GetGoldRushCampCount(self):
         self.CheckLoadData("GoldRushCamp")
         return self.ipyGoldRushCampLen

--
Gitblit v1.8.0