From 176de4ac93ece94c4ffb234d7a361a133ccf9e41 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 12 一月 2026 09:54:03 +0800
Subject: [PATCH] 389 流向记录(增加主线装备掉落流向支持:根据当前祝福等级取倒数x个品质记录;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 52 insertions(+), 7 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 9f0122e..707ea02 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -323,6 +323,10 @@
                         ("float", "QunFinalDamPerDefRatio", 0),
                         ("float", "PVPDamPerRatio", 0),
                         ("float", "PVPDamPerDefRatio", 0),
+                        ("float", "GuanchuanRatio", 0),
+                        ("float", "GuanchuanDefRatio", 0),
+                        ("float", "ZhaojiaRatio", 0),
+                        ("float", "ZhaojiaDefRatio", 0),
                         ),
 
                 "MainChapter":(
@@ -785,8 +789,11 @@
                         ("BYTE", "SpecEffLayerMax", 0),
                         ("BYTE", "SpecAttrID", 0),
                         ("DWORD", "SpecAttrValue", 0),
-                        ("DWORD", "SpecAttrPerLVAdd", 0),
                         ("DWORD", "SpecAttrPerStarAdd", 0),
+                        ("BYTE", "PowerType", 0),
+                        ("DWORD", "PowerTypeValue", 0),
+                        ("DWORD", "PowerValue", 0),
+                        ("DWORD", "PowerPerStarAdd", 0),
                         ),
 
                 "GubaoResonanceAttr":(
@@ -804,6 +811,7 @@
                 "GubaoStar":(
                         ("BYTE", "GubaoQuality", 1),
                         ("BYTE", "GubaoStar", 0),
+                        ("list", "QualityStarCond", 0),
                         ("BYTE", "StarUPNeedSelfCnt", 0),
                         ("list", "StarUPNeedItemList", 0),
                         ),
@@ -812,6 +820,13 @@
                         ("BYTE", "GubaoQuality", 1),
                         ("BYTE", "LessEqualLV", 0),
                         ("list", "LVUPNeedItemInfo", 0),
+                        ),
+
+                "GubaoLVAttr":(
+                        ("BYTE", "GubaoQuality", 1),
+                        ("BYTE", "GubaoLV", 1),
+                        ("list", "SpecAttrIDList", 0),
+                        ("list", "SpecAttrValueList", 0),
                         ),
 
                 "Beauty":(
@@ -2207,6 +2222,7 @@
                         ("list", "EquipColorRateList", 0),
                         ("list", "EquipColorRateList1", 0),
                         ("list", "EquipColorRateList2", 0),
+                        ("DWORD", "LastSureOutNeed", 0),
                         ),
 
                 "LLMJ":(
@@ -2646,7 +2662,11 @@
     def GetQunFinalDamPerRatio(self): return self.attrTuple[40] # float
     def GetQunFinalDamPerDefRatio(self): return self.attrTuple[41] # float
     def GetPVPDamPerRatio(self): return self.attrTuple[42] # float
-    def GetPVPDamPerDefRatio(self): return self.attrTuple[43] # float
+    def GetPVPDamPerDefRatio(self): return self.attrTuple[43] # float
+    def GetGuanchuanRatio(self): return self.attrTuple[44] # float
+    def GetGuanchuanDefRatio(self): return self.attrTuple[45] # float
+    def GetZhaojiaRatio(self): return self.attrTuple[46] # float
+    def GetZhaojiaDefRatio(self): return self.attrTuple[47] # float
 
 # 主线章节表
 class IPY_MainChapter():
@@ -3339,8 +3359,11 @@
     def GetSpecEffLayerMax(self): return self.attrTuple[8] # 特殊效果最大层数 BYTE
     def GetSpecAttrID(self): return self.attrTuple[9] # 特殊属性ID BYTE
     def GetSpecAttrValue(self): return self.attrTuple[10] # 特殊属性初始值 DWORD
-    def GetSpecAttrPerLVAdd(self): return self.attrTuple[11] # 特殊属性每级成长 DWORD
-    def GetSpecAttrPerStarAdd(self): return self.attrTuple[12] # 特殊属性每星成长 DWORD
+    def GetSpecAttrPerStarAdd(self): return self.attrTuple[11] # 特殊属性每星成长 DWORD
+    def GetPowerType(self): return self.attrTuple[12] # 特权效果类型 BYTE
+    def GetPowerTypeValue(self): return self.attrTuple[13] # 特权类型值 DWORD
+    def GetPowerValue(self): return self.attrTuple[14] # 特权初始值 DWORD
+    def GetPowerPerStarAdd(self): return self.attrTuple[15] # 特权每星值成长 DWORD
 
 # 古宝共鸣属性表
 class IPY_GubaoResonanceAttr():
@@ -3373,8 +3396,9 @@
         
     def GetGubaoQuality(self): return self.attrTuple[0] # 古宝品质 BYTE
     def GetGubaoStar(self): return self.attrTuple[1] # 古宝星级 BYTE
-    def GetStarUPNeedSelfCnt(self): return self.attrTuple[2] # 升到本星消耗本体碎片数量 BYTE
-    def GetStarUPNeedItemList(self): return self.attrTuple[3] # 消耗其他物品列表 [[物品ID,个数], ...] list
+    def GetQualityStarCond(self): return self.attrTuple[2] # 需同品质X个X星 list
+    def GetStarUPNeedSelfCnt(self): return self.attrTuple[3] # 升到本星消耗本体碎片数量 BYTE
+    def GetStarUPNeedItemList(self): return self.attrTuple[4] # 消耗其他物品列表 [[物品ID,个数], ...] list
 
 # 古宝品质升级表
 class IPY_GubaoLV():
@@ -3386,6 +3410,18 @@
     def GetGubaoQuality(self): return self.attrTuple[0] # 古宝品质 BYTE
     def GetLessEqualLV(self): return self.attrTuple[1] # 小于等于等级 BYTE
     def GetLVUPNeedItemInfo(self): return self.attrTuple[2] # 升级所需物品 [[物品ID,个数], ...] list
+
+# 品质升级属性表
+class IPY_GubaoLVAttr():
+    
+    def __init__(self):
+        self.attrTuple = None
+        return
+        
+    def GetGubaoQuality(self): return self.attrTuple[0] # 古宝品质 BYTE
+    def GetGubaoLV(self): return self.attrTuple[1] # 古宝等级 BYTE
+    def GetSpecAttrIDList(self): return self.attrTuple[2] # 特殊属性ID列表 list
+    def GetSpecAttrValueList(self): return self.attrTuple[3] # 特殊总属性值列表 list
 
 # 红颜表
 class IPY_Beauty():
@@ -5530,7 +5566,8 @@
     def GetLVUPNeedTime(self): return self.attrTuple[2] # 升级下一级所需所需秒 DWORD
     def GetEquipColorRateList(self): return self.attrTuple[3] # 小怪产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
     def GetEquipColorRateList1(self): return self.attrTuple[4] # 精英产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
-    def GetEquipColorRateList2(self): return self.attrTuple[5] # boss产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
+    def GetEquipColorRateList2(self): return self.attrTuple[5] # boss产出装备品质概率列表,[0品质万分率, 1品质万分率, ...] list
+    def GetLastSureOutNeed(self): return self.attrTuple[6] # 最后一档保底必出 DWORD
 
 # 历练秘笈
 class IPY_LLMJ():
@@ -5721,6 +5758,7 @@
         self.__LoadFileData("GubaoResonance", onlyCheck)
         self.__LoadFileData("GubaoStar", onlyCheck)
         self.__LoadFileData("GubaoLV", onlyCheck)
+        self.__LoadFileData("GubaoLVAttr", onlyCheck)
         self.__LoadFileData("Beauty", onlyCheck)
         self.__LoadFileData("BeautyQualityLV", onlyCheck)
         self.__LoadFileData("BeautySkin", onlyCheck)
@@ -6598,6 +6636,13 @@
         self.CheckLoadData("GubaoLV")
         return self.ipyGubaoLVCache[index]
 
+    def GetGubaoLVAttrCount(self):
+        self.CheckLoadData("GubaoLVAttr")
+        return self.ipyGubaoLVAttrLen
+    def GetGubaoLVAttrByIndex(self, index):
+        self.CheckLoadData("GubaoLVAttr")
+        return self.ipyGubaoLVAttrCache[index]
+
     def GetBeautyCount(self):
         self.CheckLoadData("Beauty")
         return self.ipyBeautyLen

--
Gitblit v1.8.0