From 11692fc9b47b4fc2dd079a2e019d980ff67d1003 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 17 三月 2026 19:57:53 +0800
Subject: [PATCH] 541 【幻境阁】新增称号加成效果-服务端(废弃红颜额外返还字段,统一使用称号额外返还;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 103 +++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 83 insertions(+), 20 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 8257d1d..f56d528 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -216,12 +216,17 @@
("list", "AttrValueList", 0),
),
- "HeroSkin":(
+ "HeroSkinAttr":(
("DWORD", "SkinID", 1),
+ ("BYTE", "SkinQuality", 0),
+ ("DWORD", "NeedItemID", 0),
+ ("BYTE", "StarMax", 0),
("list", "WearAttrIDList", 0),
("list", "WearAttrValueList", 0),
- ("list", "AllBatAttrIDList", 0),
- ("list", "AllBatAttrValueList", 0),
+ ("list", "WearAttrPerStarAddList", 0),
+ ("list", "RoleAttrIDList", 0),
+ ("list", "RoleAttrValueList", 0),
+ ("list", "RoleAttrPerStarAddList", 0),
),
"HeroQuality":(
@@ -234,6 +239,7 @@
("DWORD", "StarAddPer", 0),
("list", "BookActAwardMoney", 0),
("list", "DismissReturnItems", 0),
+ ("list", "ReturnItemsEx", 0),
("list", "RecommendAwardMoney", 0),
),
@@ -384,6 +390,10 @@
("list", "AttrIDList", 0),
("list", "InitAttrValueList", 0),
("list", "AttrPerStarAddList", 0),
+ ("BYTE", "EffType", 0),
+ ("DWORD", "EffTypeValue", 0),
+ ("DWORD", "EffValue", 0),
+ ("DWORD", "EffPerStarAdd", 0),
),
"Model":(
@@ -1213,7 +1223,9 @@
("list", "GridItemRateList2", 0),
("dict", "GridItemRateList3", 0),
("list", "GridItemRateList4", 0),
+ ("dict", "AtLeastCntLimitInfo", 0),
("dict", "LuckyItemRateInfo", 0),
+ ("dict", "LuckyItemRateInfoEx", 0),
),
"TreasureItemLib":(
@@ -1607,6 +1619,15 @@
("dict", "Attr", 0),
),
+ "QunyingCross":(
+ ("char", "AppID", 1),
+ ("WORD", "ZoneID", 1),
+ ("DWORD", "CrossServerID", 0),
+ ("list", "ServerIDList", 0),
+ ("BYTE", "SplitServerCnt", 0),
+ ("BYTE", "MatchServerCnt", 0),
+ ),
+
"FamilyCross":(
("char", "AppID", 1),
("WORD", "ZoneID", 1),
@@ -1743,6 +1764,10 @@
"Robot":(
("DWORD", "ID", 1),
("char", "RobotName", 0),
+ ("BYTE", "RealmLV", 0),
+ ("DWORD", "TempNum", 0),
+ ("DWORD", "TempValue1", 0),
+ ("DWORD", "TempValue2", 0),
("char", "ViewCache", 0),
),
}
@@ -1994,18 +2019,23 @@
def GetAttrIDList(self): return self.attrTuple[2] # 属性ID列表 list
def GetAttrValueList(self): return self.attrTuple[3] # 属性值列表 list
-# 皮肤表
-class IPY_HeroSkin():
+# 皮肤时装属性表
+class IPY_HeroSkinAttr():
def __init__(self):
self.attrTuple = None
return
def GetSkinID(self): return self.attrTuple[0] # 皮肤NPCID DWORD
- def GetWearAttrIDList(self): return self.attrTuple[1] # 穿戴属性ID列表 list
- def GetWearAttrValueList(self): return self.attrTuple[2] # 穿戴属性值列表 list
- def GetAllBatAttrIDList(self): return self.attrTuple[3] # 全体上阵属性ID列表 list
- def GetAllBatAttrValueList(self): return self.attrTuple[4] # 全体上阵属性值列表 list
+ def GetSkinQuality(self): return self.attrTuple[1] # 皮肤品质 BYTE
+ def GetNeedItemID(self): return self.attrTuple[2] # 所需道具 DWORD
+ def GetStarMax(self): return self.attrTuple[3] # 最高星级 BYTE
+ def GetWearAttrIDList(self): return self.attrTuple[4] # 穿戴属性ID列表 list
+ def GetWearAttrValueList(self): return self.attrTuple[5] # 穿戴属性值列表 list
+ def GetWearAttrPerStarAddList(self): return self.attrTuple[6] # 穿戴每星加成值列表 list
+ def GetRoleAttrIDList(self): return self.attrTuple[7] # 主公属性ID列表 list
+ def GetRoleAttrValueList(self): return self.attrTuple[8] # 主公属性初始值列表 list
+ def GetRoleAttrPerStarAddList(self): return self.attrTuple[9] # 主公每星加成值列表 list
# 武将品质表
class IPY_HeroQuality():
@@ -2023,7 +2053,8 @@
def GetStarAddPer(self): return self.attrTuple[6] # 卡牌每星级加成 DWORD
def GetBookActAwardMoney(self): return self.attrTuple[7] # 图鉴激活奖励货币 类型|值 list
def GetDismissReturnItems(self): return self.attrTuple[8] # 遣散每星返还道具 [[物品ID,个数], ...] list
- def GetRecommendAwardMoney(self): return self.attrTuple[9] # 阵容推荐激活奖励货币 类型|值 list
+ def GetReturnItemsEx(self): return self.attrTuple[9] # 额外返还道具基数 [[物品ID,个数], ...] list
+ def GetRecommendAwardMoney(self): return self.attrTuple[10] # 阵容推荐激活奖励货币 类型|值 list
# 武将品质突破表
class IPY_HeroQualityBreak():
@@ -2232,7 +2263,11 @@
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
+ def GetAttrPerStarAddList(self): return self.attrTuple[9] # 每星加成值列表 list
+ def GetEffType(self): return self.attrTuple[10] # 天赋效果类型 BYTE
+ def GetEffTypeValue(self): return self.attrTuple[11] # 效果类型值 DWORD
+ def GetEffValue(self): return self.attrTuple[12] # 效果初始值 DWORD
+ def GetEffPerStarAdd(self): return self.attrTuple[13] # 效果每星成长 DWORD
# 形象表
class IPY_Model():
@@ -3467,7 +3502,9 @@
def GetGridItemRateList2(self): return self.attrTuple[7] # 每满x次保底产出格子编号饼图 [[概率, 格子编号], ...] list
def GetGridItemRateList3(self): return self.attrTuple[8] # 第x次必出产出格子编号饼图 {次数:[[概率, 格子编号], ...], ...} dict
def GetGridItemRateList4(self): return self.attrTuple[9] # 第x次x抽必出 list
- def GetLuckyItemRateInfo(self): return self.attrTuple[10] # 幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
+ def GetAtLeastCntLimitInfo(self): return self.attrTuple[10] # 最小次数才能产出限制 {格子:至少所需次数才可产出, ...} dict
+ def GetLuckyItemRateInfo(self): return self.attrTuple[11] # 幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
+ def GetLuckyItemRateInfoEx(self): return self.attrTuple[12] # 非永久卡玩家幸运产出概率饼图 {"幸运值":[[概率, 格子编号], ...], ...} dict
# 寻宝物品库
class IPY_TreasureItemLib():
@@ -4075,6 +4112,20 @@
def GetCostItem(self): return self.attrTuple[3] # 消耗材料 dict
def GetAttr(self): return self.attrTuple[4] # 属性 dict
+# 群英榜分区表
+class IPY_QunyingCross():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetAppID(self): return self.attrTuple[0] # AppID char
+ def GetZoneID(self): return self.attrTuple[1] # 分区ID WORD
+ def GetCrossServerID(self): return self.attrTuple[2] # 跨服服务器ID DWORD
+ def GetServerIDList(self): return self.attrTuple[3] # 互通服务器ID列表 list
+ def GetSplitServerCnt(self): return self.attrTuple[4] # 按X个相邻服分割 BYTE
+ def GetMatchServerCnt(self): return self.attrTuple[5] # 分割区服内X个服随机匹配一组 BYTE
+
# 跨服公会表
class IPY_FamilyCross():
@@ -4307,7 +4358,11 @@
def GetID(self): return self.attrTuple[0] # 机器人ID,同玩家ID DWORD
def GetRobotName(self): return self.attrTuple[1] # char
- def GetViewCache(self): return self.attrTuple[2] # 机器人缓存 char
+ def GetRealmLV(self): return self.attrTuple[2] # 指定官职 BYTE
+ def GetTempNum(self): return self.attrTuple[3] # 功能模版 DWORD
+ def GetTempValue1(self): return self.attrTuple[4] # 功能值1 DWORD
+ def GetTempValue2(self): return self.attrTuple[5] # 功能值2 DWORD
+ def GetViewCache(self): return self.attrTuple[6] # 机器人缓存 char
def Log(msg, playerID=0, par=0):
@@ -4377,7 +4432,7 @@
self.__LoadFileData("HeroAwake", onlyCheck)
self.__LoadFileData("HeroFetter", onlyCheck)
self.__LoadFileData("HeroLineupHalo", onlyCheck)
- self.__LoadFileData("HeroSkin", onlyCheck)
+ self.__LoadFileData("HeroSkinAttr", onlyCheck)
self.__LoadFileData("HeroQuality", onlyCheck)
self.__LoadFileData("HeroQualityBreak", onlyCheck)
self.__LoadFileData("HeroQualityAwake", onlyCheck)
@@ -4515,6 +4570,7 @@
self.__LoadFileData("EquipShenEvolve", onlyCheck)
self.__LoadFileData("EquipStarUp", onlyCheck)
self.__LoadFileData("EquipPlusEvolve", onlyCheck)
+ self.__LoadFileData("QunyingCross", onlyCheck)
self.__LoadFileData("FamilyCross", onlyCheck)
self.__LoadFileData("Family", onlyCheck)
self.__LoadFileData("FamilyEmblem", onlyCheck)
@@ -4843,12 +4899,12 @@
self.CheckLoadData("HeroLineupHalo")
return self.ipyHeroLineupHaloCache[index]
- def GetHeroSkinCount(self):
- self.CheckLoadData("HeroSkin")
- return self.ipyHeroSkinLen
- def GetHeroSkinByIndex(self, index):
- self.CheckLoadData("HeroSkin")
- return self.ipyHeroSkinCache[index]
+ def GetHeroSkinAttrCount(self):
+ self.CheckLoadData("HeroSkinAttr")
+ return self.ipyHeroSkinAttrLen
+ def GetHeroSkinAttrByIndex(self, index):
+ self.CheckLoadData("HeroSkinAttr")
+ return self.ipyHeroSkinAttrCache[index]
def GetHeroQualityCount(self):
self.CheckLoadData("HeroQuality")
@@ -5809,6 +5865,13 @@
self.CheckLoadData("EquipPlusEvolve")
return self.ipyEquipPlusEvolveCache[index]
+ def GetQunyingCrossCount(self):
+ self.CheckLoadData("QunyingCross")
+ return self.ipyQunyingCrossLen
+ def GetQunyingCrossByIndex(self, index):
+ self.CheckLoadData("QunyingCross")
+ return self.ipyQunyingCrossCache[index]
+
def GetFamilyCrossCount(self):
self.CheckLoadData("FamilyCross")
return self.ipyFamilyCrossLen
--
Gitblit v1.8.0