From e41e926bbbd0255acde8b4b62d5558a025b83a02 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 11 六月 2025 17:18:27 +0800 Subject: [PATCH] 10263 【越南】【BT】增加后台执行命令清除本服榜单某个玩家ID数据: ClearBillboardData --- ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py | 210 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 201 insertions(+), 9 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py index 40b6f87..79c7e39 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py @@ -351,6 +351,15 @@ ("BYTE", "LimitVIPLV", 0), ), + "ChinItem":( + ("DWORD", "ItemID", 1), + ("BYTE", "ItemType", 0), + ("DWORD", "Effect1", 0), + ("DWORD", "EffectValueA1", 0), + ("DWORD", "EffectValueB1", 0), + ("DWORD", "EffectValueC1", 0), + ), + "ChinNPC":( ("DWORD", "NPCID", 1), ("char", "NPCName", 0), @@ -474,9 +483,6 @@ ("BYTE", "ActNum", 0), ("char", "StartDate", 0), ("char", "EndDate", 0), - ("dict", "NotifyInfoStart", 0), - ("dict", "NotifyInfoEnd", 0), - ("list", "NotifyInfoLoop", 0), ("BYTE", "IsDayReset", 0), ), @@ -635,6 +641,55 @@ ("BYTE", "Rank", 0), ("list", "AwardItemList", 0), ("DWORD", "NeedScore", 0), + ("dict", "ScoreAwardEx", 0), + ), + + "ActTimeFlow":( + ("DWORD", "FlowID", 1), + ("BYTE", "StartDay", 0), + ("BYTE", "StartHour", 0), + ("BYTE", "StartMinute", 0), + ("BYTE", "EndDay", 0), + ("BYTE", "EndHour", 0), + ("BYTE", "EndMinute", 0), + ("WORD", "StateValue", 0), + ), + + "ActBillboardAwardTemp":( + ("DWORD", "TemplateID", 1), + ("BYTE", "Rank", 0), + ("DWORD", "NeedValue", 0), + ("dict", "ValueAwardEx", 0), + ("list", "AwardItemList", 0), + ("list", "LeaderAwardItemList", 0), + ("list", "EliteAwardItemList", 0), + ), + + "ActGuess":( + ("DWORD", "TemplateID", 1), + ("DWORD", "AwardID", 0), + ("list", "RightRankList", 0), + ("list", "AwardItemList", 0), + ), + + "CrossActFamilyGCZ":( + ("DWORD", "CfgID", 1), + ("char", "ActGroupName", 0), + ("BYTE", "ZoneID", 0), + ("list", "ServerIDRangeList", 0), + ("char", "StartDate", 0), + ("char", "EndDate", 0), + ("BYTE", "JoinFamilyCnt", 0), + ("WORD", "ActFlowID", 0), + ("WORD", "GuessTemplateID", 0), + ("WORD", "PersonalTemplateID", 0), + ("WORD", "FamilyTemplateID", 0), + ), + + "CrossActFamilyGCZCampLV":( + ("DWORD", "CampLV", 1), + ("DWORD", "LVUPNeedExp", 0), + ("DWORD", "AddHPPer", 0), ), "ActXianXiaMJ":( @@ -1216,6 +1271,8 @@ ("DWORD", "TitleID", 0), ("list", "AwardItemList", 0), ("char", "MailKey", 0), + ("BYTE", "WorshipType", 0), + ("DWORD", "WorshipValue", 0), ), "FairyDomain":( @@ -1724,6 +1781,20 @@ def GetLimiRealmLV(self): return self.attrTuple[3] # 需要境界等级 WORD def GetLimitVIPLV(self): return self.attrTuple[4] # 需要VIP等级 BYTE +# 物品表 +class IPY_ChinItem(): + + def __init__(self): + self.attrTuple = None + return + + def GetItemID(self): return self.attrTuple[0] # 物品ID DWORD + def GetItemType(self): return self.attrTuple[1] # 物品类型 BYTE + def GetEffect1(self): return self.attrTuple[2] # 道具使用效果1 DWORD + def GetEffectValueA1(self): return self.attrTuple[3] # 效果1的a值 DWORD + def GetEffectValueB1(self): return self.attrTuple[4] # 效果1的b值 DWORD + def GetEffectValueC1(self): return self.attrTuple[5] # 效果1的c值 DWORD + # NPC表 class IPY_ChinNPC(): @@ -1898,10 +1969,7 @@ def GetActNum(self): return self.attrTuple[3] # 活动分组编号, 活动类型 * 10 + 不同界面编号 BYTE def GetStartDate(self): return self.attrTuple[4] # 开启日期 char def GetEndDate(self): return self.attrTuple[5] # 结束日期 char - def GetNotifyInfoStart(self): return self.attrTuple[6] # 全服提示信息 - 相对开始时间 dict - def GetNotifyInfoEnd(self): return self.attrTuple[7] # 全服提示信息 - 相对结束时间 dict - def GetNotifyInfoLoop(self): return self.attrTuple[8] # 全服提示信息 - 循环广播[间隔分钟, 广播key] list - def GetIsDayReset(self): return self.attrTuple[9] # 是否每天重置 BYTE + def GetIsDayReset(self): return self.attrTuple[6] # 是否每天重置 BYTE # 集字活动时间表 class IPY_ActCollectWords(): @@ -2123,7 +2191,81 @@ def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD def GetRank(self): return self.attrTuple[1] # 名次 BYTE def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list - def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD + def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD + def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict + +# 活动时间流程表 +class IPY_ActTimeFlow(): + + def __init__(self): + self.attrTuple = None + return + + def GetFlowID(self): return self.attrTuple[0] # DWORD + def GetStartDay(self): return self.attrTuple[1] # 开始天 BYTE + def GetStartHour(self): return self.attrTuple[2] # 开始时 BYTE + def GetStartMinute(self): return self.attrTuple[3] # 开始分 BYTE + def GetEndDay(self): return self.attrTuple[4] # 结束天 BYTE + def GetEndHour(self): return self.attrTuple[5] # 结束时 BYTE + def GetEndMinute(self): return self.attrTuple[6] # 结束分 BYTE + def GetStateValue(self): return self.attrTuple[7] # 状态值 WORD + +# 活动榜单奖励模版表 +class IPY_ActBillboardAwardTemp(): + + def __init__(self): + self.attrTuple = None + return + + def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD + def GetRank(self): return self.attrTuple[1] # 名次 BYTE + def GetNeedValue(self): return self.attrTuple[2] # 上榜所需值 DWORD + def GetValueAwardEx(self): return self.attrTuple[3] # 达标值额外奖励 {值:[[物品ID,个数,是否拍品], ...], ...} dict + def GetAwardItemList(self): return self.attrTuple[4] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list + def GetLeaderAwardItemList(self): return self.attrTuple[5] # 仙盟榜盟主奖励物品信息列表[[物品ID,个数,是否拍品], ...] list + def GetEliteAwardItemList(self): return self.attrTuple[6] # 仙盟榜精英奖励物品信息列表[[物品ID,个数,是否拍品], ...] list + +# 活动竞猜表 +class IPY_ActGuess(): + + def __init__(self): + self.attrTuple = None + return + + def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD + def GetAwardID(self): return self.attrTuple[1] # 奖励ID DWORD + def GetRightRankList(self): return self.attrTuple[2] # 猜对名次列表 list + def GetAwardItemList(self): return self.attrTuple[3] # 对应奖励列表 [[物品ID,个数,是否拍品], ...] list + +# 仙盟攻城战活动表 +class IPY_CrossActFamilyGCZ(): + + def __init__(self): + self.attrTuple = None + return + + def GetCfgID(self): return self.attrTuple[0] # 配置ID DWORD + def GetActGroupName(self): return self.attrTuple[1] # 活动组名(同组活动的名字需相同) char + def GetZoneID(self): return self.attrTuple[2] # 组内分组编号 BYTE + def GetServerIDRangeList(self): return self.attrTuple[3] # 活动的服务器ID范围列表 [[serverIDA, serverIDB], ...] list + def GetStartDate(self): return self.attrTuple[4] # 开启日期 char + def GetEndDate(self): return self.attrTuple[5] # 结束日期 char + def GetJoinFamilyCnt(self): return self.attrTuple[6] # 参与仙盟数 BYTE + def GetActFlowID(self): return self.attrTuple[7] # 活动流程ID,对应H.活动时间流程表 WORD + def GetGuessTemplateID(self): return self.attrTuple[8] # 竞猜奖励模版,对应H.活动竞猜表 WORD + def GetPersonalTemplateID(self): return self.attrTuple[9] # 个人伤害排行奖励模版,对应H.活动榜单奖励模版表 WORD + def GetFamilyTemplateID(self): return self.attrTuple[10] # 仙盟积分排行奖励模版,对应H.活动榜单奖励模版表 WORD + +# 仙盟攻城战大本营等级表 +class IPY_CrossActFamilyGCZCampLV(): + + def __init__(self): + self.attrTuple = None + return + + def GetCampLV(self): return self.attrTuple[0] # 大本营等级 DWORD + def GetLVUPNeedExp(self): return self.attrTuple[1] # 升下一级所需经验 DWORD + def GetAddHPPer(self): return self.attrTuple[2] # 生命累计总加成百分比 DWORD # 仙匣秘境活动时间表 class IPY_ActXianXiaMJ(): @@ -2979,7 +3121,9 @@ def GetMoneyValue(self): return self.attrTuple[3] # 货币值 DWORD def GetTitleID(self): return self.attrTuple[4] # 称号ID DWORD def GetAwardItemList(self): return self.attrTuple[5] # 晋级仙宫奖励物品列表 list - def GetMailKey(self): return self.attrTuple[6] # 仙官通知邮件 char + def GetMailKey(self): return self.attrTuple[6] # 仙官通知邮件 char + def GetWorshipType(self): return self.attrTuple[7] # 膜拜类型 BYTE + def GetWorshipValue(self): return self.attrTuple[8] # 膜拜值 DWORD # 缥缈仙域表 class IPY_FairyDomain(): @@ -3083,6 +3227,7 @@ self.__LoadFileData("ActFeastWish", onlyCheck) self.__LoadFileData("ActFeastTravel", onlyCheck) self.__LoadFileData("FuncOpenLV", onlyCheck) + self.__LoadFileData("ChinItem", onlyCheck) self.__LoadFileData("ChinNPC", onlyCheck) self.__LoadFileData("PlayerLV", onlyCheck) self.__LoadFileData("VipPrivilege", onlyCheck) @@ -3106,6 +3251,11 @@ self.__LoadFileData("ActGubaoBillTemp", onlyCheck) self.__LoadFileData("CrossActLianqi", onlyCheck) self.__LoadFileData("ActLianqiBillTemp", onlyCheck) + self.__LoadFileData("ActTimeFlow", onlyCheck) + self.__LoadFileData("ActBillboardAwardTemp", onlyCheck) + self.__LoadFileData("ActGuess", onlyCheck) + self.__LoadFileData("CrossActFamilyGCZ", onlyCheck) + self.__LoadFileData("CrossActFamilyGCZCampLV", onlyCheck) self.__LoadFileData("ActXianXiaMJ", onlyCheck) self.__LoadFileData("CrossActXianXiaMJ", onlyCheck) self.__LoadFileData("ActXianXiaMJBillTemp", onlyCheck) @@ -3623,6 +3773,13 @@ self.CheckLoadData("FuncOpenLV") return self.ipyFuncOpenLVCache[index] + def GetChinItemCount(self): + self.CheckLoadData("ChinItem") + return self.ipyChinItemLen + def GetChinItemByIndex(self, index): + self.CheckLoadData("ChinItem") + return self.ipyChinItemCache[index] + def GetChinNPCCount(self): self.CheckLoadData("ChinNPC") return self.ipyChinNPCLen @@ -3784,6 +3941,41 @@ self.CheckLoadData("ActLianqiBillTemp") return self.ipyActLianqiBillTempCache[index] + def GetActTimeFlowCount(self): + self.CheckLoadData("ActTimeFlow") + return self.ipyActTimeFlowLen + def GetActTimeFlowByIndex(self, index): + self.CheckLoadData("ActTimeFlow") + return self.ipyActTimeFlowCache[index] + + def GetActBillboardAwardTempCount(self): + self.CheckLoadData("ActBillboardAwardTemp") + return self.ipyActBillboardAwardTempLen + def GetActBillboardAwardTempByIndex(self, index): + self.CheckLoadData("ActBillboardAwardTemp") + return self.ipyActBillboardAwardTempCache[index] + + def GetActGuessCount(self): + self.CheckLoadData("ActGuess") + return self.ipyActGuessLen + def GetActGuessByIndex(self, index): + self.CheckLoadData("ActGuess") + return self.ipyActGuessCache[index] + + def GetCrossActFamilyGCZCount(self): + self.CheckLoadData("CrossActFamilyGCZ") + return self.ipyCrossActFamilyGCZLen + def GetCrossActFamilyGCZByIndex(self, index): + self.CheckLoadData("CrossActFamilyGCZ") + return self.ipyCrossActFamilyGCZCache[index] + + def GetCrossActFamilyGCZCampLVCount(self): + self.CheckLoadData("CrossActFamilyGCZCampLV") + return self.ipyCrossActFamilyGCZCampLVLen + def GetCrossActFamilyGCZCampLVByIndex(self, index): + self.CheckLoadData("CrossActFamilyGCZCampLV") + return self.ipyCrossActFamilyGCZCampLVCache[index] + def GetActXianXiaMJCount(self): self.CheckLoadData("ActXianXiaMJ") return self.ipyActXianXiaMJLen -- Gitblit v1.8.0