| | |
| | | ("list", "BuffStateLimit", 0),
|
| | | ("BYTE", "CurBuffState", 0),
|
| | | ("WORD", "LastTime", 0),
|
| | | ("BYTE", "LastTimeType", 0),
|
| | | ("BYTE", "LayerCnt", 0),
|
| | | ("BYTE", "LayerMax", 0),
|
| | | ("DWORD", "BuffRepeat", 0),
|
| | |
| | | ("float", "WuFinalDamPerDefRatio", 0),
|
| | | ("float", "QunFinalDamPerRatio", 0),
|
| | | ("float", "QunFinalDamPerDefRatio", 0),
|
| | | ("float", "PVPDamPerRatio", 0),
|
| | | ("float", "PVPDamPerDefRatio", 0),
|
| | | ),
|
| | |
|
| | | "MainChapter":(
|
| | |
| | | ("DWORD", "LimitMissionID", 0),
|
| | | ("WORD", "LimitOpenDay", 0),
|
| | | ("char", "MailKey", 0),
|
| | | ("list", "AwardList", 0),
|
| | | ),
|
| | |
|
| | | "ItemCompound":(
|
| | |
| | | ("list", "LVUPNeedItemInfo", 0),
|
| | | ),
|
| | |
|
| | | "Shentong":(
|
| | | ("BYTE", "ShentongID", 1),
|
| | | ("WORD", "NeedGubaoID", 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),
|
| | | ),
|
| | |
|
| | | "ShentongLV":(
|
| | | ("BYTE", "ShentongID", 1),
|
| | | ("BYTE", "ShentongClassLV", 1),
|
| | | ("BYTE", "ShentongLV", 1),
|
| | | ("list", "LVLightNeedItem", 0),
|
| | | ("list", "LVAttrTypeList", 0),
|
| | | ("list", "LVAttrValueList", 0),
|
| | | ("DWORD", "LVSkillID", 0),
|
| | | ("DWORD", "FightPowerEx", 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),
|
| | | ),
|
| | |
|
| | | "PlayerLV":(
|
| | |
| | | ("DWORD", "ADID", 1),
|
| | | ("BYTE", "ADCntMax", 0),
|
| | | ("list", "ADAwardItemList", 0),
|
| | | ("DWORD", "ADMapID", 0),
|
| | | ("BYTE", "ADAwardType", 0),
|
| | | ("DWORD", "ADAwardValue", 0),
|
| | | ),
|
| | |
|
| | | "Success":(
|
| | |
| | | ("dict", "Reward", 0),
|
| | | ("BYTE", "VIPLimit", 0),
|
| | | ("list", "VIPAward", 0),
|
| | | ),
|
| | |
|
| | | "Invest":(
|
| | | ("WORD", "ID", 1),
|
| | | ("BYTE", "Type", 0),
|
| | | ("BYTE", "NeedDay", 0),
|
| | | ("WORD", "NeedLV", 0),
|
| | | ("DWORD", "NeedNPCID", 0),
|
| | | ("dict", "Reward", 0),
|
| | | ),
|
| | |
|
| | | "XBXZ":(
|
| | | ("DWORD", "ID", 1),
|
| | | ("BYTE", "Type", 0),
|
| | | ("DWORD", "NeedCnt", 0),
|
| | | ("list", "Condition", 0),
|
| | | ("WORD", "MWID", 0),
|
| | | ("list", "AwardItem", 0),
|
| | | ("list", "Money", 0),
|
| | | ),
|
| | |
|
| | | "TreasureSet":(
|
| | |
| | | ("DWORD", "Weight", 0),
|
| | | ("DWORD", "Mark", 0),
|
| | | ("BYTE", "Rare", 0),
|
| | | ),
|
| | |
|
| | | "FunctionForecast":(
|
| | | ("DWORD", "FuncID", 1),
|
| | | ("dict", "Award", 0),
|
| | | ),
|
| | |
|
| | | "EmojiPack":(
|
| | |
| | | def GetBuffStateLimit(self): return self.attrTuple[32] # Buff状态限制组 list
|
| | | def GetCurBuffState(self): return self.attrTuple[33] # Buff״ֵ̬ BYTE
|
| | | def GetLastTime(self): return self.attrTuple[34] # 持续时间 WORD
|
| | | def GetLayerCnt(self): return self.attrTuple[35] # Buff层数 BYTE
|
| | | def GetLayerMax(self): return self.attrTuple[36] # 最大层数 BYTE
|
| | | def GetBuffRepeat(self): return self.attrTuple[37] # Buff叠加规则 DWORD
|
| | | def GetDispersedLimit(self): return self.attrTuple[38] # 驱散限制 BYTE
|
| | | def GetFightPower(self): return self.attrTuple[39] # 技能战斗力 DWORD |
| | | def GetLastTimeType(self): return self.attrTuple[35] # 持续时间规则 BYTE
|
| | | def GetLayerCnt(self): return self.attrTuple[36] # Buff层数 BYTE
|
| | | def GetLayerMax(self): return self.attrTuple[37] # 最大层数 BYTE
|
| | | def GetBuffRepeat(self): return self.attrTuple[38] # Buff叠加规则 DWORD
|
| | | def GetDispersedLimit(self): return self.attrTuple[39] # 驱散限制 BYTE
|
| | | def GetFightPower(self): return self.attrTuple[40] # 技能战斗力 DWORD |
| | | |
| | | # 武将表 |
| | | class IPY_Hero(): |
| | |
| | | def GetWuFinalDamPerRatio(self): return self.attrTuple[38] # float
|
| | | def GetWuFinalDamPerDefRatio(self): return self.attrTuple[39] # float
|
| | | def GetQunFinalDamPerRatio(self): return self.attrTuple[40] # float
|
| | | def GetQunFinalDamPerDefRatio(self): return self.attrTuple[41] # 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 |
| | | |
| | | # 主线章节表 |
| | | class IPY_MainChapter(): |
| | |
| | | def GetLimiRealmLV(self): return self.attrTuple[2] # 需要境界等级 WORD
|
| | | def GetLimitMissionID(self): return self.attrTuple[3] # 需要完成的任务ID DWORD
|
| | | def GetLimitOpenDay(self): return self.attrTuple[4] # 开服第几天开启 WORD
|
| | | def GetMailKey(self): return self.attrTuple[5] # 邮件 char |
| | | def GetMailKey(self): return self.attrTuple[5] # 邮件 char
|
| | | def GetAwardList(self): return self.attrTuple[6] # 奖励列表[[物品ID,个数], ...] list |
| | | |
| | | # 合成表 |
| | | class IPY_ItemCompound(): |
| | |
| | | def GetLessEqualLV(self): return self.attrTuple[1] # 小于等于等级 BYTE
|
| | | def GetLVUPNeedItemInfo(self): return self.attrTuple[2] # 升级所需物品 [[物品ID,个数], ...] list |
| | | |
| | | # 神通表 |
| | | class IPY_Shentong(): |
| | | # 红颜表 |
| | | class IPY_Beauty(): |
| | | |
| | | def __init__(self): |
| | | self.attrTuple = None |
| | | return |
| | | |
| | | def GetShentongID(self): return self.attrTuple[0] # 神通ID BYTE
|
| | | def GetNeedGubaoID(self): return self.attrTuple[1] # 解锁所需古宝ID WORD |
| | | 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_ShentongLV(): |
| | | # 红颜品质升级表 |
| | | class IPY_BeautyQualityLV(): |
| | | |
| | | def __init__(self): |
| | | self.attrTuple = None |
| | | return |
| | | |
| | | def GetShentongID(self): return self.attrTuple[0] # 神通ID BYTE
|
| | | def GetShentongClassLV(self): return self.attrTuple[1] # 神通阶级 BYTE
|
| | | def GetShentongLV(self): return self.attrTuple[2] # 神通等级 BYTE
|
| | | def GetLVLightNeedItem(self): return self.attrTuple[3] # 点亮该级所需物品 [[物品ID,个数], ...] list
|
| | | def GetLVAttrTypeList(self): return self.attrTuple[4] # 该级属性类型列表 list
|
| | | def GetLVAttrValueList(self): return self.attrTuple[5] # 该级属性值列表 list
|
| | | def GetLVSkillID(self): return self.attrTuple[6] # 该级职业通用技能ID DWORD
|
| | | def GetFightPowerEx(self): return self.attrTuple[7] # 附加战力 DWORD |
| | | 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_PlayerLV(): |
| | |
| | | def GetADID(self): return self.attrTuple[0] # DWORD
|
| | | def GetADCntMax(self): return self.attrTuple[1] # 每日次数 BYTE
|
| | | def GetADAwardItemList(self): return self.attrTuple[2] # 广告奖励物品列表 list
|
| | | def GetADMapID(self): return self.attrTuple[3] # 对应副本ID,默认给该副本1次次数 DWORD |
| | | def GetADAwardType(self): return self.attrTuple[3] # 奖励类型 BYTE
|
| | | def GetADAwardValue(self): return self.attrTuple[4] # 类型对应值 DWORD |
| | | |
| | | # 成就表 |
| | | class IPY_Success(): |
| | |
| | | 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_Invest(): |
| | | |
| | | def __init__(self): |
| | | self.attrTuple = None |
| | | return |
| | | |
| | | def GetID(self): return self.attrTuple[0] # ID WORD
|
| | | def GetType(self): return self.attrTuple[1] # 投资类型 BYTE
|
| | | def GetNeedDay(self): return self.attrTuple[2] # 需要天数 BYTE
|
| | | def GetNeedLV(self): return self.attrTuple[3] # 需要等级 WORD
|
| | | def GetNeedNPCID(self): return self.attrTuple[4] # 需要NPCID DWORD
|
| | | def GetReward(self): return self.attrTuple[5] # 奖励 {"key":[[物品ID,个数,是否绑定],...], ...} dict |
| | | |
| | | # 仙宝寻主表 |
| | | 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(): |
| | |
| | | def GetWeight(self): return self.attrTuple[6] # 权重 DWORD
|
| | | def GetMark(self): return self.attrTuple[7] # 排序用标识 DWORD
|
| | | def GetRare(self): return self.attrTuple[8] # 珍稀值 BYTE |
| | | |
| | | # 功能预告表 |
| | | class IPY_FunctionForecast(): |
| | | |
| | | def __init__(self): |
| | | self.attrTuple = None |
| | | return |
| | | |
| | | def GetFuncID(self): return self.attrTuple[0] # 功能ID DWORD
|
| | | def GetAward(self): return self.attrTuple[1] # 属性类型 dict |
| | | |
| | | # 表情包表 |
| | | class IPY_EmojiPack(): |
| | |
| | | self.__LoadFileData("GubaoResonance", onlyCheck)
|
| | | self.__LoadFileData("GubaoStar", onlyCheck)
|
| | | self.__LoadFileData("GubaoLV", onlyCheck)
|
| | | self.__LoadFileData("Shentong", onlyCheck)
|
| | | self.__LoadFileData("ShentongLV", onlyCheck)
|
| | | self.__LoadFileData("Beauty", onlyCheck)
|
| | | self.__LoadFileData("BeautyQualityLV", onlyCheck)
|
| | | self.__LoadFileData("BeautySkin", onlyCheck)
|
| | | self.__LoadFileData("PlayerLV", onlyCheck)
|
| | | self.__LoadFileData("SpecMapPlayerAttrFormat", onlyCheck)
|
| | | self.__LoadFileData("GMAttr", onlyCheck)
|
| | |
| | | self.__LoadFileData("CTGSelectItem", onlyCheck)
|
| | | self.__LoadFileData("FirstCharge", onlyCheck)
|
| | | self.__LoadFileData("LVAward", onlyCheck)
|
| | | self.__LoadFileData("Invest", onlyCheck)
|
| | | self.__LoadFileData("XBXZ", onlyCheck)
|
| | | self.__LoadFileData("TreasureSet", onlyCheck)
|
| | | self.__LoadFileData("TreasureHouse", onlyCheck)
|
| | | self.__LoadFileData("TreasureItemLib", onlyCheck)
|
| | |
| | | self.__LoadFileData("ActFlashSale", onlyCheck)
|
| | | self.__LoadFileData("ActWishingWell", onlyCheck)
|
| | | self.__LoadFileData("WishingWell", onlyCheck)
|
| | | self.__LoadFileData("FunctionForecast", onlyCheck)
|
| | | self.__LoadFileData("EmojiPack", onlyCheck)
|
| | | self.__LoadFileData("ActRechargePrize", onlyCheck)
|
| | | self.__LoadFileData("RechargePrizeTemplate", onlyCheck)
|
| | |
| | | self.CheckLoadData("GubaoLV") |
| | | return self.ipyGubaoLVCache[index]
|
| | | |
| | | def GetShentongCount(self): |
| | | self.CheckLoadData("Shentong") |
| | | return self.ipyShentongLen
|
| | | def GetShentongByIndex(self, index): |
| | | self.CheckLoadData("Shentong") |
| | | return self.ipyShentongCache[index]
|
| | | def GetBeautyCount(self): |
| | | self.CheckLoadData("Beauty") |
| | | return self.ipyBeautyLen
|
| | | def GetBeautyByIndex(self, index): |
| | | self.CheckLoadData("Beauty") |
| | | return self.ipyBeautyCache[index]
|
| | | |
| | | def GetShentongLVCount(self): |
| | | self.CheckLoadData("ShentongLV") |
| | | return self.ipyShentongLVLen
|
| | | def GetShentongLVByIndex(self, index): |
| | | self.CheckLoadData("ShentongLV") |
| | | return self.ipyShentongLVCache[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 GetPlayerLVCount(self): |
| | | self.CheckLoadData("PlayerLV") |
| | |
| | | self.CheckLoadData("LVAward") |
| | | return self.ipyLVAwardCache[index]
|
| | | |
| | | def GetInvestCount(self): |
| | | self.CheckLoadData("Invest") |
| | | return self.ipyInvestLen
|
| | | def GetInvestByIndex(self, index): |
| | | self.CheckLoadData("Invest") |
| | | return self.ipyInvestCache[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") |
| | | return self.ipyTreasureSetLen
|
| | |
| | | def GetWishingWellByIndex(self, index): |
| | | self.CheckLoadData("WishingWell") |
| | | return self.ipyWishingWellCache[index]
|
| | | |
| | | def GetFunctionForecastCount(self): |
| | | self.CheckLoadData("FunctionForecast") |
| | | return self.ipyFunctionForecastLen
|
| | | def GetFunctionForecastByIndex(self, index): |
| | | self.CheckLoadData("FunctionForecast") |
| | | return self.ipyFunctionForecastCache[index]
|
| | | |
| | | def GetEmojiPackCount(self): |
| | | self.CheckLoadData("EmojiPack") |