From ac36bdcfa7db1557790a5b912c3248b22625841f Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 26 十一月 2025 18:49:17 +0800
Subject: [PATCH] Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_ServerCode

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |  322 +++++++++++++++++++++++++++++------------------------
 1 files changed, 176 insertions(+), 146 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index c16c9d1..c408770 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -249,6 +249,8 @@
                         ("DWORD", "Quality", 1),
                         ("DWORD", "HeroLV", 1),
                         ("list", "UPCostItem", 0),
+                        ("list", "AttrIDList", 0),
+                        ("list", "AttrValueList", 0),
                         ),
 
                 "LineupRecommend":(
@@ -795,6 +797,59 @@
                         ("list", "LVUPNeedItemInfo", 0),
                         ),
 
+                "Beauty":(
+                        ("WORD", "BeautyID", 1),
+                        ("BYTE", "BeautyQuality", 0),
+                        ("BYTE", "UnlockWay", 0),
+                        ("DWORD", "UnlockValue", 0),
+                        ("BYTE", "UnlockNeedCnt", 0),
+                        ("list", "TalentAttrIDList", 0),
+                        ("list", "TalentAttrValueList", 0),
+                        ("list", "TalentPerLVAddList", 0),
+                        ("BYTE", "EffType", 0),
+                        ("BYTE", "EffTypeValue", 0),
+                        ("BYTE", "EffValue", 0),
+                        ("DWORD", "EffPerLVAdd", 0),
+                        ),
+
+                "BeautyQualityLV":(
+                        ("BYTE", "BeautyQuality", 1),
+                        ("WORD", "BeautyLV", 1),
+                        ("WORD", "LVNeedExp", 0),
+                        ("list", "AttrIDList", 0),
+                        ("list", "AttrValueList", 0),
+                        ("list", "AwardItemList", 0),
+                        ),
+
+                "BeautySkin":(
+                        ("WORD", "SkinID", 0),
+                        ("WORD", "BeautyID", 1),
+                        ("BYTE", "UnlockWay", 0),
+                        ("DWORD", "UnlockValue", 0),
+                        ("BYTE", "UnlockNeedCnt", 0),
+                        ("BYTE", "UpNeedCnt", 0),
+                        ("BYTE", "StarMax", 0),
+                        ("list", "AttrIDList", 0),
+                        ("list", "InitAttrValueList", 0),
+                        ("list", "AttrPerStarAddList", 0),
+                        ),
+
+                "TravelEvent":(
+                        ("WORD", "EventID", 1),
+                        ("DWORD", "EventWeight", 0),
+                        ("DWORD", "AwardItemID", 0),
+                        ("DWORD", "AwardItemCnt", 0),
+                        ),
+
+                "TravelScenery":(
+                        ("BYTE", "SceneryType", 1),
+                        ("BYTE", "AwardQuality", 0),
+                        ("DWORD", "UpRate", 0),
+                        ("list", "AwardItemRandCntList", 0),
+                        ("list", "AwardItemExWeightList", 0),
+                        ("BYTE", "AwardItemExCnt", 0),
+                        ),
+
                 "PlayerLV":(
                         ("WORD", "LV", 1),
                         ("DWORD", "Exp", 0),
@@ -1185,16 +1240,6 @@
                         ("dict", "Reward", 0),
                         ("BYTE", "VIPLimit", 0),
                         ("list", "VIPAward", 0),
-                        ),
-
-                "XBXZ":(
-                        ("DWORD", "ID", 1),
-                        ("BYTE", "Type", 0),
-                        ("DWORD", "NeedCnt", 0),
-                        ("list", "Condition", 0),
-                        ("WORD", "MWID", 0),
-                        ("list", "AwardItem", 0),
-                        ("list", "Money", 0),
                         ),
 
                 "TreasureSet":(
@@ -1884,30 +1929,6 @@
                         ("char", "WorldNotifyKey", 0),
                         ),
 
-                "ActFeastTravel":(
-                        ("DWORD", "CfgID", 1),
-                        ("char", "StartDate", 0),
-                        ("char", "EndDate", 0),
-                        ("WORD", "LVLimit", 0),
-                        ("BYTE", "ResetType", 0),
-                        ("dict", "TemplateIDInfo", 0),
-                        ),
-
-                "ActFeastTravelTask":(
-                        ("BYTE", "TraveTasklD", 1),
-                        ("WORD", "FinishNeedValue", 0),
-                        ("WORD", "FinishTimeMax", 0),
-                        ("BYTE", "AddTravelPoint", 0),
-                        ),
-
-                "ActFeastTravelAward":(
-                        ("BYTE", "TemplatelD", 1),
-                        ("BYTE", "RecordIndex", 0),
-                        ("WORD", "NeedTravelPoint", 0),
-                        ("BYTE", "AwardCountMax", 0),
-                        ("list", "TravelAwardInfo", 0),
-                        ),
-
                 "ActFeastWeekParty":(
                         ("DWORD", "CfgID", 1),
                         ("char", "StartDate", 0),
@@ -2118,12 +2139,6 @@
                         ("DWORD", "NeedExp", 0),
                         ("dict", "AttrInfo", 0),
                         ("BYTE", "SkinIndex", 0),
-                        ),
-
-                "AssistThanksGift":(
-                        ("DWORD", "GiftID", 1),
-                        ("list", "RequestPlayerAward", 0),
-                        ("list", "AssistPlayerAward", 0),
                         ),
 
                 "FuncSysPrivilege":(
@@ -2508,7 +2523,9 @@
         
     def GetQuality(self): return self.attrTuple[0] # 品质 DWORD
     def GetHeroLV(self): return self.attrTuple[1] # 武将等级 DWORD
-    def GetUPCostItem(self): return self.attrTuple[2] #  升级到下级消耗道具 list
+    def GetUPCostItem(self): return self.attrTuple[2] #  升级到下级消耗道具 list
+    def GetAttrIDList(self): return self.attrTuple[3] #  武将属性ID列表 list
+    def GetAttrValueList(self): return self.attrTuple[4] #  累计总属性值列表 list
 
 # 推荐阵容表
 class IPY_LineupRecommend():
@@ -3319,6 +3336,84 @@
     def GetLessEqualLV(self): return self.attrTuple[1] # 小于等于等级 BYTE
     def GetLVUPNeedItemInfo(self): return self.attrTuple[2] # 升级所需物品 [[物品ID,个数], ...] list
 
+# 红颜表
+class IPY_Beauty():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetBeautyID(self): return self.attrTuple[0] # 红颜ID WORD
+    def GetBeautyQuality(self): return self.attrTuple[1] # 品质 BYTE
+    def GetUnlockWay(self): return self.attrTuple[2] # 解锁方式 BYTE
+    def GetUnlockValue(self): return self.attrTuple[3] # 解锁方式值 DWORD
+    def GetUnlockNeedCnt(self): return self.attrTuple[4] # 解锁所需个数 BYTE
+    def GetTalentAttrIDList(self): return self.attrTuple[5] # 天赋属性ID列表 list
+    def GetTalentAttrValueList(self): return self.attrTuple[6] # 天赋属性初始值 list
+    def GetTalentPerLVAddList(self): return self.attrTuple[7] # 天赋属性每级成长 list
+    def GetEffType(self): return self.attrTuple[8] # 天赋效果类型 BYTE
+    def GetEffTypeValue(self): return self.attrTuple[9] # 效果类型值 BYTE
+    def GetEffValue(self): return self.attrTuple[10] # 效果初始值 BYTE
+    def GetEffPerLVAdd(self): return self.attrTuple[11] # 天赋效果每级成长 DWORD
+
+# 红颜品质升级表
+class IPY_BeautyQualityLV():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetBeautyQuality(self): return self.attrTuple[0] # BYTE
+    def GetBeautyLV(self): return self.attrTuple[1] # WORD
+    def GetLVNeedExp(self): return self.attrTuple[2] # 升到本级所需经验 WORD
+    def GetAttrIDList(self): return self.attrTuple[3] # 本级属性ID列表 list
+    def GetAttrValueList(self): return self.attrTuple[4] # 本级属性值列表 list
+    def GetAwardItemList(self): return self.attrTuple[5] # 本级奖励 list
+
+# 红颜时装表
+class IPY_BeautySkin():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetSkinID(self): return self.attrTuple[0] # 时装ID WORD
+    def GetBeautyID(self): return self.attrTuple[1] # WORD
+    def GetUnlockWay(self): return self.attrTuple[2] # 解锁方式 BYTE
+    def GetUnlockValue(self): return self.attrTuple[3] # 解锁方式值 DWORD
+    def GetUnlockNeedCnt(self): return self.attrTuple[4] # 解锁所需个数 BYTE
+    def GetUpNeedCnt(self): return self.attrTuple[5] # 升级所需个数 BYTE
+    def GetStarMax(self): return self.attrTuple[6] # 最高星级 BYTE
+    def GetAttrIDList(self): return self.attrTuple[7] # 属性ID列表 list
+    def GetInitAttrValueList(self): return self.attrTuple[8] # 初始属性值列表 list
+    def GetAttrPerStarAddList(self): return self.attrTuple[9] # 每星加成值列表 list
+
+# 游历事件表
+class IPY_TravelEvent():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetEventID(self): return self.attrTuple[0] # WORD
+    def GetEventWeight(self): return self.attrTuple[1] # 事件权重 DWORD
+    def GetAwardItemID(self): return self.attrTuple[2] # 奖励物品ID DWORD
+    def GetAwardItemCnt(self): return self.attrTuple[3] # 奖励物品数量 DWORD
+
+# 游历景观奖励表
+class IPY_TravelScenery():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetSceneryType(self): return self.attrTuple[0] # 景观类型 BYTE
+    def GetAwardQuality(self): return self.attrTuple[1] # 景观品质 BYTE
+    def GetUpRate(self): return self.attrTuple[2] # 升下个品质概率 DWORD
+    def GetAwardItemRandCntList(self): return self.attrTuple[3] # 奖励物品随机个数列表 [[物品ID, 随机数量A, 到B], ...] list
+    def GetAwardItemExWeightList(self): return self.attrTuple[4] # 额外奖励物品权重 [[权重,物品ID,个数], ...] list
+    def GetAwardItemExCnt(self): return self.attrTuple[5] # 额外奖励物品数 BYTE
+
 # 玩家等级表
 class IPY_PlayerLV():
     
@@ -3900,21 +3995,6 @@
     def GetReward(self): return self.attrTuple[3] # 奖励 {"职业":[[物品ID,个数],...], ...} dict
     def GetVIPLimit(self): return self.attrTuple[4] # 需要VIP几 BYTE
     def GetVIPAward(self): return self.attrTuple[5] # vip奖励[[物品ID,个数],...] list
-
-# 仙宝寻主表
-class IPY_XBXZ():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetID(self): return self.attrTuple[0] # ID DWORD
-    def GetType(self): return self.attrTuple[1] # 类型 BYTE
-    def GetNeedCnt(self): return self.attrTuple[2] # 需要数量 DWORD
-    def GetCondition(self): return self.attrTuple[3] # 条件 list
-    def GetMWID(self): return self.attrTuple[4] # 法宝ID WORD
-    def GetAwardItem(self): return self.attrTuple[5] # 奖励物品列表 list
-    def GetMoney(self): return self.attrTuple[6] # 金钱 list
 
 # 寻宝设定表
 class IPY_TreasureSet():
@@ -4973,45 +5053,6 @@
     def GetGoodItemIDList(self): return self.attrTuple[3] # 需要广播的物品ID列表 [物品ID, ...] list
     def GetWorldNotifyKey(self): return self.attrTuple[4] # 全服广播key,参数(玩家名, 物品ID, 物品数据, 个数,) char
 
-# 节日游历时间表
-class IPY_ActFeastTravel():
-    
-    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 GetLVLimit(self): return self.attrTuple[3] # 限制等级 WORD
-    def GetResetType(self): return self.attrTuple[4] # 重置类型,0-0点重置;1-5点重置 BYTE
-    def GetTemplateIDInfo(self): return self.attrTuple[5] # 模板信息 {(世界等级A,B):模板编号, ...} dict
-
-# 节日游历任务表
-class IPY_ActFeastTravelTask():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetTraveTasklD(self): return self.attrTuple[0] # 游历ID BYTE
-    def GetFinishNeedValue(self): return self.attrTuple[1] # 完成所需进度值 WORD
-    def GetFinishTimeMax(self): return self.attrTuple[2] # 总可完成次数,0不限 WORD
-    def GetAddTravelPoint(self): return self.attrTuple[3] # 完成次数获得游历值 BYTE
-
-# 节日游历奖励表
-class IPY_ActFeastTravelAward():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetTemplatelD(self): return self.attrTuple[0] # 奖励模板ID BYTE
-    def GetRecordIndex(self): return self.attrTuple[1] # 奖励记录索引 BYTE
-    def GetNeedTravelPoint(self): return self.attrTuple[2] # 领奖所需游历值 WORD
-    def GetAwardCountMax(self): return self.attrTuple[3] # 可领取次数,0代表不限 BYTE
-    def GetTravelAwardInfo(self): return self.attrTuple[4] # 游历奖励 [[物品ID,个数,是否拍品], ...] list
-
 # 节日巡礼活动时间表
 class IPY_ActFeastWeekParty():
     
@@ -5354,17 +5395,6 @@
     def GetAttrInfo(self): return self.attrTuple[4] # 属性 dict
     def GetSkinIndex(self): return self.attrTuple[5] # 外观 BYTE
 
-# 协助感谢礼盒表
-class IPY_AssistThanksGift():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetGiftID(self): return self.attrTuple[0] # 礼盒物品ID DWORD
-    def GetRequestPlayerAward(self): return self.attrTuple[1] #  发布奖励物品 物品ID|个数 list
-    def GetAssistPlayerAward(self): return self.attrTuple[2] #  协助奖励物品 物品ID|个数 list
-
 # 功能特权奖励表
 class IPY_FuncSysPrivilege():
     
@@ -5631,6 +5661,11 @@
         self.__LoadFileData("GubaoResonance", onlyCheck)
         self.__LoadFileData("GubaoStar", onlyCheck)
         self.__LoadFileData("GubaoLV", onlyCheck)
+        self.__LoadFileData("Beauty", onlyCheck)
+        self.__LoadFileData("BeautyQualityLV", onlyCheck)
+        self.__LoadFileData("BeautySkin", onlyCheck)
+        self.__LoadFileData("TravelEvent", onlyCheck)
+        self.__LoadFileData("TravelScenery", onlyCheck)
         self.__LoadFileData("PlayerLV", onlyCheck)
         self.__LoadFileData("SpecMapPlayerAttrFormat", onlyCheck)
         self.__LoadFileData("GMAttr", onlyCheck)
@@ -5669,7 +5704,6 @@
         self.__LoadFileData("CTGSelectItem", onlyCheck)
         self.__LoadFileData("FirstCharge", onlyCheck)
         self.__LoadFileData("LVAward", onlyCheck)
-        self.__LoadFileData("XBXZ", onlyCheck)
         self.__LoadFileData("TreasureSet", onlyCheck)
         self.__LoadFileData("TreasureHouse", onlyCheck)
         self.__LoadFileData("TreasureItemLib", onlyCheck)
@@ -5744,9 +5778,6 @@
         self.__LoadFileData("ActFeastWish", onlyCheck)
         self.__LoadFileData("ActFeastWishBottle", onlyCheck)
         self.__LoadFileData("ActFeastWishPool", onlyCheck)
-        self.__LoadFileData("ActFeastTravel", onlyCheck)
-        self.__LoadFileData("ActFeastTravelTask", onlyCheck)
-        self.__LoadFileData("ActFeastTravelAward", onlyCheck)
         self.__LoadFileData("ActFeastWeekParty", onlyCheck)
         self.__LoadFileData("FeastWeekParty", onlyCheck)
         self.__LoadFileData("NewAllPeopleParty", onlyCheck)
@@ -5773,7 +5804,6 @@
         self.__LoadFileData("LoveRing", onlyCheck)
         self.__LoadFileData("LoveCharm", onlyCheck)
         self.__LoadFileData("HorsePetSkin", onlyCheck)
-        self.__LoadFileData("AssistThanksGift", onlyCheck)
         self.__LoadFileData("FuncSysPrivilege", onlyCheck)
         self.__LoadFileData("HistoryRechargeAward", onlyCheck)
         self.__LoadFileData("CustomAward", onlyCheck)
@@ -6494,6 +6524,41 @@
         self.CheckLoadData("GubaoLV")
         return self.ipyGubaoLVCache[index]
 
+    def GetBeautyCount(self):
+        self.CheckLoadData("Beauty")
+        return self.ipyBeautyLen
+    def GetBeautyByIndex(self, index):
+        self.CheckLoadData("Beauty")
+        return self.ipyBeautyCache[index]
+
+    def GetBeautyQualityLVCount(self):
+        self.CheckLoadData("BeautyQualityLV")
+        return self.ipyBeautyQualityLVLen
+    def GetBeautyQualityLVByIndex(self, index):
+        self.CheckLoadData("BeautyQualityLV")
+        return self.ipyBeautyQualityLVCache[index]
+
+    def GetBeautySkinCount(self):
+        self.CheckLoadData("BeautySkin")
+        return self.ipyBeautySkinLen
+    def GetBeautySkinByIndex(self, index):
+        self.CheckLoadData("BeautySkin")
+        return self.ipyBeautySkinCache[index]
+
+    def GetTravelEventCount(self):
+        self.CheckLoadData("TravelEvent")
+        return self.ipyTravelEventLen
+    def GetTravelEventByIndex(self, index):
+        self.CheckLoadData("TravelEvent")
+        return self.ipyTravelEventCache[index]
+
+    def GetTravelSceneryCount(self):
+        self.CheckLoadData("TravelScenery")
+        return self.ipyTravelSceneryLen
+    def GetTravelSceneryByIndex(self, index):
+        self.CheckLoadData("TravelScenery")
+        return self.ipyTravelSceneryCache[index]
+
     def GetPlayerLVCount(self):
         self.CheckLoadData("PlayerLV")
         return self.ipyPlayerLVLen
@@ -6759,13 +6824,6 @@
     def GetLVAwardByIndex(self, index):
         self.CheckLoadData("LVAward")
         return self.ipyLVAwardCache[index]
-
-    def GetXBXZCount(self):
-        self.CheckLoadData("XBXZ")
-        return self.ipyXBXZLen
-    def GetXBXZByIndex(self, index):
-        self.CheckLoadData("XBXZ")
-        return self.ipyXBXZCache[index]
 
     def GetTreasureSetCount(self):
         self.CheckLoadData("TreasureSet")
@@ -7285,27 +7343,6 @@
         self.CheckLoadData("ActFeastWishPool")
         return self.ipyActFeastWishPoolCache[index]
 
-    def GetActFeastTravelCount(self):
-        self.CheckLoadData("ActFeastTravel")
-        return self.ipyActFeastTravelLen
-    def GetActFeastTravelByIndex(self, index):
-        self.CheckLoadData("ActFeastTravel")
-        return self.ipyActFeastTravelCache[index]
-
-    def GetActFeastTravelTaskCount(self):
-        self.CheckLoadData("ActFeastTravelTask")
-        return self.ipyActFeastTravelTaskLen
-    def GetActFeastTravelTaskByIndex(self, index):
-        self.CheckLoadData("ActFeastTravelTask")
-        return self.ipyActFeastTravelTaskCache[index]
-
-    def GetActFeastTravelAwardCount(self):
-        self.CheckLoadData("ActFeastTravelAward")
-        return self.ipyActFeastTravelAwardLen
-    def GetActFeastTravelAwardByIndex(self, index):
-        self.CheckLoadData("ActFeastTravelAward")
-        return self.ipyActFeastTravelAwardCache[index]
-
     def GetActFeastWeekPartyCount(self):
         self.CheckLoadData("ActFeastWeekParty")
         return self.ipyActFeastWeekPartyLen
@@ -7487,13 +7524,6 @@
     def GetHorsePetSkinByIndex(self, index):
         self.CheckLoadData("HorsePetSkin")
         return self.ipyHorsePetSkinCache[index]
-
-    def GetAssistThanksGiftCount(self):
-        self.CheckLoadData("AssistThanksGift")
-        return self.ipyAssistThanksGiftLen
-    def GetAssistThanksGiftByIndex(self, index):
-        self.CheckLoadData("AssistThanksGift")
-        return self.ipyAssistThanksGiftCache[index]
 
     def GetFuncSysPrivilegeCount(self):
         self.CheckLoadData("FuncSysPrivilege")

--
Gitblit v1.8.0