From 3f862208516829ee806168cbb633bc9221f0cf6a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 11 十月 2025 20:30:10 +0800
Subject: [PATCH] 271 【内政】古宝系统-服务端
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 215 +++++++++++++++--------------------------------------
1 files changed, 63 insertions(+), 152 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 2483e81..488dc0e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -772,10 +772,18 @@
"Gubao":(
("WORD", "GubaoID", 1),
- ("BYTE", "GubaoType", 0),
("BYTE", "GubaoQuality", 0),
("DWORD", "UnlockItemID", 0),
("BYTE", "UnlockItemCnt", 0),
+ ("list", "BaseAttrIDList", 0),
+ ("list", "BaseAttrValueList", 0),
+ ("list", "BaseAttrPerStarAddList", 0),
+ ("BYTE", "SpecEffType", 0),
+ ("BYTE", "SpecEffLayerMax", 0),
+ ("BYTE", "SpecAttrID", 0),
+ ("DWORD", "SpecAttrValue", 0),
+ ("DWORD", "SpecAttrPerLVAdd", 0),
+ ("DWORD", "SpecAttrPerStarAdd", 0),
),
"GubaoResonanceAttr":(
@@ -791,35 +799,16 @@
),
"GubaoStar":(
- ("WORD", "GubaoID", 1),
- ("BYTE", "GubaoStar", 1),
- ("list", "StarUPNeedItemInfo", 0),
- ("list", "StarUPNeedQualityPiece", 0),
- ("list", "StarAttrIDList", 0),
- ("list", "StarAttrValueList", 0),
- ("list", "StarEffIDList", 0),
- ),
-
- "GubaoEffAttr":(
- ("DWORD", "GubaoEffID", 1),
- ("BYTE", "GubaoEffType", 0),
- ("DWORD", "EffCond", 0),
- ("DWORD", "EffCond2", 0),
- ("DWORD", "EffCond3", 0),
- ("BYTE", "IsPer", 0),
- ("list", "EffFuncAttrIDList", 0),
- ("DWORD", "EffAttrID", 0),
- ("DWORD", "EffAttrValue", 0),
- ("list", "EffItemAwardList", 0),
+ ("BYTE", "GubaoQuality", 1),
+ ("BYTE", "GubaoStar", 0),
+ ("BYTE", "StarUPNeedSelfCnt", 0),
+ ("list", "StarUPNeedItemList", 0),
),
"GubaoLV":(
- ("BYTE", "GubaoType", 1),
("BYTE", "GubaoQuality", 1),
- ("BYTE", "GubaoLV", 1),
+ ("BYTE", "LessEqualLV", 0),
("list", "LVUPNeedItemInfo", 0),
- ("list", "LVAttrTypeList", 0),
- ("list", "LVAttrValueList", 0),
),
"Shentong":(
@@ -932,14 +921,6 @@
("DWORD", "RandExpMin", 0),
("DWORD", "RandExpMax", 0),
("dict", "ExpMaterial", 0),
- ),
-
- "FamilyTech":(
- ("DWORD", "TechID", 1),
- ("BYTE", "AttrType", 0),
- ("DWORD", "AttrValue", 0),
- ("DWORD", "Contribution", 0),
- ("DWORD", "PowerEx", 0),
),
"NPCDropItem":(
@@ -1283,14 +1264,6 @@
("list", "PersonFirstKillAward", 0),
),
- "FamilyActivity":(
- ("DWORD", "ID", 1),
- ("WORD", "UnLockFuncID", 0),
- ("BYTE", "TotalActivityTime", 0),
- ("WORD", "SingleTimes", 0),
- ("WORD", "SingleActiveValue", 0),
- ),
-
"FamilyRedPack":(
("WORD", "ID", 1),
("WORD", "GetType", 0),
@@ -1424,12 +1397,6 @@
"LoginDayAward":(
("BYTE", "DayID", 1),
- ("dict", "Reward", 0),
- ),
-
- "OnlineAwardNew":(
- ("BYTE", "DayID", 1),
- ("list", "StageTime", 0),
("dict", "Reward", 0),
),
@@ -2386,6 +2353,14 @@
("BYTE", "UnlockFamilyLV", 0),
("DWORD", "ExpireMinutes", 0),
("DWORD", "CustomFamilyID", 0),
+ ),
+
+ "FamilyDonate":(
+ ("BYTE", "DonateType", 1),
+ ("BYTE", "DailyCnt", 0),
+ ("BYTE", "MoneyType", 0),
+ ("DWORD", "MoneyValue", 0),
+ ("list", "AwardItemList", 0),
),
"FamilyZhenbaogeCut":(
@@ -3642,10 +3617,18 @@
return
def GetGubaoID(self): return self.attrTuple[0] # 古宝ID WORD
- def GetGubaoType(self): return self.attrTuple[1] # 古宝分类 BYTE
- def GetGubaoQuality(self): return self.attrTuple[2] # 古宝品质 BYTE
- def GetUnlockItemID(self): return self.attrTuple[3] # 解锁所需物品ID DWORD
- def GetUnlockItemCnt(self): return self.attrTuple[4] # 解锁所需物品数量 BYTE
+ def GetGubaoQuality(self): return self.attrTuple[1] # 古宝品质 BYTE
+ def GetUnlockItemID(self): return self.attrTuple[2] # 解锁所需物品ID DWORD
+ def GetUnlockItemCnt(self): return self.attrTuple[3] # 解锁所需物品数量 BYTE
+ def GetBaseAttrIDList(self): return self.attrTuple[4] # 基础属性ID列表 list
+ def GetBaseAttrValueList(self): return self.attrTuple[5] # 基础属性初始值 list
+ def GetBaseAttrPerStarAddList(self): return self.attrTuple[6] # 基础属性每星成长 list
+ def GetSpecEffType(self): return self.attrTuple[7] # 特殊效果类型 BYTE
+ 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
# 古宝共鸣属性表
class IPY_GubaoResonanceAttr():
@@ -3669,38 +3652,17 @@
def GetResonanceID(self): return self.attrTuple[0] # 共鸣ID WORD
def GetGubaoIDList(self): return self.attrTuple[1] # 古宝ID列表 list
-# 古宝升星表
+# 古宝品质升星表
class IPY_GubaoStar():
def __init__(self):
self.attrTuple = None
return
- def GetGubaoID(self): return self.attrTuple[0] # 古宝ID WORD
+ def GetGubaoQuality(self): return self.attrTuple[0] # 古宝品质 BYTE
def GetGubaoStar(self): return self.attrTuple[1] # 古宝星级 BYTE
- def GetStarUPNeedItemInfo(self): return self.attrTuple[2] # 升星所需物品 [[物品ID,个数], ...] list
- def GetStarUPNeedQualityPiece(self): return self.attrTuple[3] # 升下一星额外所需品质碎片 [[品质,个数], ...] list
- def GetStarAttrIDList(self): return self.attrTuple[4] # 累计总属性ID列表 list
- def GetStarAttrValueList(self): return self.attrTuple[5] # 累计总属性值列表 list
- def GetStarEffIDList(self): return self.attrTuple[6] # 星级特殊效果ID列表 list
-
-# 古宝特殊效果表
-class IPY_GubaoEffAttr():
-
- def __init__(self):
- self.attrTuple = None
- return
-
- def GetGubaoEffID(self): return self.attrTuple[0] # 古宝特殊效果ID DWORD
- def GetGubaoEffType(self): return self.attrTuple[1] # 效果类型 BYTE
- def GetEffCond(self): return self.attrTuple[2] # 条件 DWORD
- def GetEffCond2(self): return self.attrTuple[3] # 条件2 DWORD
- def GetEffCond3(self): return self.attrTuple[4] # 条件3 DWORD
- def GetIsPer(self): return self.attrTuple[5] # 是否百分比提升 BYTE
- def GetEffFuncAttrIDList(self): return self.attrTuple[6] # 提升指定功能属性ID列表 list
- def GetEffAttrID(self): return self.attrTuple[7] # 直接增加属性类型 DWORD
- def GetEffAttrValue(self): return self.attrTuple[8] # 提升属性值 DWORD
- def GetEffItemAwardList(self): return self.attrTuple[9] # 领取物品列表 list
+ def GetStarUPNeedSelfCnt(self): return self.attrTuple[2] # 升到本星消耗本体碎片数量 BYTE
+ def GetStarUPNeedItemList(self): return self.attrTuple[3] # 消耗其他物品列表 [[物品ID,个数], ...] list
# 古宝品质升级表
class IPY_GubaoLV():
@@ -3709,12 +3671,9 @@
self.attrTuple = None
return
- def GetGubaoType(self): return self.attrTuple[0] # 古宝分类 BYTE
- def GetGubaoQuality(self): return self.attrTuple[1] # 古宝品质 BYTE
- def GetGubaoLV(self): return self.attrTuple[2] # 古宝等级 BYTE
- def GetLVUPNeedItemInfo(self): return self.attrTuple[3] # 升级所需物品 [[物品ID,个数], ...] list
- def GetLVAttrTypeList(self): return self.attrTuple[4] # 等级属性类型列表 list
- def GetLVAttrValueList(self): return self.attrTuple[5] # 等级属性值列表 list
+ 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_Shentong():
@@ -3877,19 +3836,6 @@
def GetRandExpMin(self): return self.attrTuple[1] # 最小随机精炼值 DWORD
def GetRandExpMax(self): return self.attrTuple[2] # 最大随机精炼值 DWORD
def GetExpMaterial(self): return self.attrTuple[3] # 翅膀代数对应精炼值 dict
-
-# 仙盟科技表
-class IPY_FamilyTech():
-
- def __init__(self):
- self.attrTuple = None
- return
-
- def GetTechID(self): return self.attrTuple[0] # 科技ID*1000+等级 DWORD
- def GetAttrType(self): return self.attrTuple[1] # 属性类型 BYTE
- def GetAttrValue(self): return self.attrTuple[2] # 属性值 DWORD
- def GetContribution(self): return self.attrTuple[3] # 需要贡献度 DWORD
- def GetPowerEx(self): return self.attrTuple[4] # 额外战力 DWORD
# NPC掉落表
class IPY_NPCDropItem():
@@ -4367,19 +4313,6 @@
def GetPerPlayerMoneyAward(self): return self.attrTuple[1] # 首杀全服玩家奖励灵石额度/人 WORD
def GetPersonFirstKillAward(self): return self.attrTuple[2] # 个人首次击杀奖励 [[物品ID,个数,是否拍品], ...] list
-# 仙盟活跃表
-class IPY_FamilyActivity():
-
- def __init__(self):
- self.attrTuple = None
- return
-
- def GetID(self): return self.attrTuple[0] # ID DWORD
- def GetUnLockFuncID(self): return self.attrTuple[1] # 解锁功能ID WORD
- def GetTotalActivityTime(self): return self.attrTuple[2] # 总次数 BYTE
- def GetSingleTimes(self): return self.attrTuple[3] # 增加活跃需要次数 WORD
- def GetSingleActiveValue(self): return self.attrTuple[4] # 每轮增加活跃积分 WORD
-
# 仙盟红包表
class IPY_FamilyRedPack():
@@ -4585,17 +4518,6 @@
def GetDayID(self): return self.attrTuple[0] # 天数 BYTE
def GetReward(self): return self.attrTuple[1] # 奖励 {"职业":[[物品ID,个数],...], ...} dict
-
-# 七天在线奖励表新
-class IPY_OnlineAwardNew():
-
- def __init__(self):
- self.attrTuple = None
- return
-
- def GetDayID(self): return self.attrTuple[0] # 天数 BYTE
- def GetStageTime(self): return self.attrTuple[1] # 阶段所需时间(分钟) list
- def GetReward(self): return self.attrTuple[2] # 奖励 {"索引":[[物品ID,个数],...], ...} dict
# 七天限时特惠表
class IPY_SpringSale():
@@ -6077,6 +5999,19 @@
def GetExpireMinutes(self): return self.attrTuple[2] # 有效时长,分钟 DWORD
def GetCustomFamilyID(self): return self.attrTuple[3] # 定制仙盟ID DWORD
+# 仙盟捐献表
+class IPY_FamilyDonate():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetDonateType(self): return self.attrTuple[0] # 捐献类型 BYTE
+ def GetDailyCnt(self): return self.attrTuple[1] # 每日次数 BYTE
+ def GetMoneyType(self): return self.attrTuple[2] # 消耗货币类型 BYTE
+ def GetMoneyValue(self): return self.attrTuple[3] # 消耗货币值 DWORD
+ def GetAwardItemList(self): return self.attrTuple[4] # 获得奖励列表[[物品ID,个数], ...] list
+
# 仙盟珍宝阁砍价表
class IPY_FamilyZhenbaogeCut():
@@ -6256,7 +6191,7 @@
def GetAwardID(self): return self.attrTuple[0] # 奖励ID 1~n BYTE
def GetAwardItemList(self): return self.attrTuple[1] # 物品奖励[[物品ID,个数,是否拍品], ...] list
-# 战令表
+# 战令表/基金
class IPY_Zhanling():
def __init__(self):
@@ -6480,7 +6415,6 @@
self.__LoadFileData("GubaoResonanceAttr", onlyCheck)
self.__LoadFileData("GubaoResonance", onlyCheck)
self.__LoadFileData("GubaoStar", onlyCheck)
- self.__LoadFileData("GubaoEffAttr", onlyCheck)
self.__LoadFileData("GubaoLV", onlyCheck)
self.__LoadFileData("Shentong", onlyCheck)
self.__LoadFileData("ShentongLV", onlyCheck)
@@ -6492,7 +6426,6 @@
self.__LoadFileData("EquipSuitAttr", onlyCheck)
self.__LoadFileData("WingRefineAttr", onlyCheck)
self.__LoadFileData("WingRefineExp", onlyCheck)
- self.__LoadFileData("FamilyTech", onlyCheck)
self.__LoadFileData("NPCDropItem", onlyCheck)
self.__LoadFileData("RuneTower", onlyCheck)
self.__LoadFileData("ChinMap", onlyCheck)
@@ -6520,7 +6453,6 @@
self.__LoadFileData("ActivityPlaceReward", onlyCheck)
self.__LoadFileData("BOSSInfo", onlyCheck)
self.__LoadFileData("BOSSFirstKill", onlyCheck)
- self.__LoadFileData("FamilyActivity", onlyCheck)
self.__LoadFileData("FamilyRedPack", onlyCheck)
self.__LoadFileData("ActFeastRedPacketSucc", onlyCheck)
self.__LoadFileData("NPCShow", onlyCheck)
@@ -6535,7 +6467,6 @@
self.__LoadFileData("OSCBillRankAward", onlyCheck)
self.__LoadFileData("OSCBillTagAward", onlyCheck)
self.__LoadFileData("LoginDayAward", onlyCheck)
- self.__LoadFileData("OnlineAwardNew", onlyCheck)
self.__LoadFileData("SpringSale", onlyCheck)
self.__LoadFileData("OrderInfo", onlyCheck)
self.__LoadFileData("CTG", onlyCheck)
@@ -6641,6 +6572,7 @@
self.__LoadFileData("EquipPlusEvolve", onlyCheck)
self.__LoadFileData("Family", onlyCheck)
self.__LoadFileData("FamilyEmblem", onlyCheck)
+ self.__LoadFileData("FamilyDonate", onlyCheck)
self.__LoadFileData("FamilyZhenbaogeCut", onlyCheck)
self.__LoadFileData("FamilyZhenbaogeItem", onlyCheck)
self.__LoadFileData("FamilyZhenfa", onlyCheck)
@@ -7400,13 +7332,6 @@
self.CheckLoadData("GubaoStar")
return self.ipyGubaoStarCache[index]
- def GetGubaoEffAttrCount(self):
- self.CheckLoadData("GubaoEffAttr")
- return self.ipyGubaoEffAttrLen
- def GetGubaoEffAttrByIndex(self, index):
- self.CheckLoadData("GubaoEffAttr")
- return self.ipyGubaoEffAttrCache[index]
-
def GetGubaoLVCount(self):
self.CheckLoadData("GubaoLV")
return self.ipyGubaoLVLen
@@ -7483,13 +7408,6 @@
def GetWingRefineExpByIndex(self, index):
self.CheckLoadData("WingRefineExp")
return self.ipyWingRefineExpCache[index]
-
- def GetFamilyTechCount(self):
- self.CheckLoadData("FamilyTech")
- return self.ipyFamilyTechLen
- def GetFamilyTechByIndex(self, index):
- self.CheckLoadData("FamilyTech")
- return self.ipyFamilyTechCache[index]
def GetNPCDropItemCount(self):
self.CheckLoadData("NPCDropItem")
@@ -7680,13 +7598,6 @@
self.CheckLoadData("BOSSFirstKill")
return self.ipyBOSSFirstKillCache[index]
- def GetFamilyActivityCount(self):
- self.CheckLoadData("FamilyActivity")
- return self.ipyFamilyActivityLen
- def GetFamilyActivityByIndex(self, index):
- self.CheckLoadData("FamilyActivity")
- return self.ipyFamilyActivityCache[index]
-
def GetFamilyRedPackCount(self):
self.CheckLoadData("FamilyRedPack")
return self.ipyFamilyRedPackLen
@@ -7784,13 +7695,6 @@
def GetLoginDayAwardByIndex(self, index):
self.CheckLoadData("LoginDayAward")
return self.ipyLoginDayAwardCache[index]
-
- def GetOnlineAwardNewCount(self):
- self.CheckLoadData("OnlineAwardNew")
- return self.ipyOnlineAwardNewLen
- def GetOnlineAwardNewByIndex(self, index):
- self.CheckLoadData("OnlineAwardNew")
- return self.ipyOnlineAwardNewCache[index]
def GetSpringSaleCount(self):
self.CheckLoadData("SpringSale")
@@ -8527,6 +8431,13 @@
self.CheckLoadData("FamilyEmblem")
return self.ipyFamilyEmblemCache[index]
+ def GetFamilyDonateCount(self):
+ self.CheckLoadData("FamilyDonate")
+ return self.ipyFamilyDonateLen
+ def GetFamilyDonateByIndex(self, index):
+ self.CheckLoadData("FamilyDonate")
+ return self.ipyFamilyDonateCache[index]
+
def GetFamilyZhenbaogeCutCount(self):
self.CheckLoadData("FamilyZhenbaogeCut")
return self.ipyFamilyZhenbaogeCutLen
--
Gitblit v1.8.0