From dcf9cc7f1e059a6898898097d8b30dcf213f1aa1 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 31 七月 2023 16:45:52 +0800 Subject: [PATCH] 9788 【BT9】【后端】成就系统(修复成就给货币奖励失败bug) --- ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py | 144 ++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 127 insertions(+), 17 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py index be85ba3..2ce90b3 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py @@ -187,6 +187,46 @@ Def_Notify_WorldKey_CrossBattlefieldCallTeamInfo = "CrossBattlefieldCallTeamInfo" # 跨服战场召集队伍信息 +CrossChampionshipState_Guess8 = 80 #8强竞猜 +CrossChampionshipState_Group64 = 641 #64强分组 +CrossChampionshipState_Enter64 = 642 #64强进场 +CrossChampionshipState_Fight64 = 643 #64强战斗 +CrossChampionshipState_Group32 = 321 #32强分组 +CrossChampionshipState_Enter32 = 322 #32强进场 +CrossChampionshipState_Fight32 = 323 #32强战斗 +CrossChampionshipState_Group16 = 161 #16强分组 +CrossChampionshipState_Enter16 = 162 #16强进场 +CrossChampionshipState_Fight16 = 163 #16强战斗 +CrossChampionshipState_Guess4 = 40 #4强竞猜 +CrossChampionshipState_Group8 = 81 #8强分组 +CrossChampionshipState_Enter8 = 82 #8强进场 +CrossChampionshipState_Fight8 = 83 #8强战斗 +CrossChampionshipState_GroupSemi = 41 #半决赛分组 +CrossChampionshipState_EnterSemi = 42 #半决赛进场 +CrossChampionshipState_FightSemi = 43 #半决赛战斗 +CrossChampionshipState_GroupFinal = 21 #决赛分组 +CrossChampionshipState_EnterFinal = 22 #决赛进场 +CrossChampionshipState_FightFinal = 23 #决赛战斗 +#跨服排位争霸赛状态流程列表,必须按顺序,中间不可跳过步骤 +CrossChampionshipStateList = [CrossChampionshipState_Guess8, + CrossChampionshipState_Group64, CrossChampionshipState_Enter64, CrossChampionshipState_Fight64, + CrossChampionshipState_Group32, CrossChampionshipState_Enter32, CrossChampionshipState_Fight32, + CrossChampionshipState_Group16, CrossChampionshipState_Enter16, CrossChampionshipState_Fight16, + CrossChampionshipState_Guess4, + CrossChampionshipState_Group8, CrossChampionshipState_Enter8, CrossChampionshipState_Fight8, + CrossChampionshipState_GroupSemi, CrossChampionshipState_EnterSemi, CrossChampionshipState_FightSemi, + CrossChampionshipState_GroupFinal, CrossChampionshipState_EnterFinal, CrossChampionshipState_FightFinal + ] + +#跨服排位可进入战斗的状态信息 {状态:对应分组标识, ...} +CrossChampionshipEnterStateInfo = {CrossChampionshipState_Enter64:64, + CrossChampionshipState_Enter32:32, + CrossChampionshipState_Enter16:16, + CrossChampionshipState_Enter8:8, + CrossChampionshipState_EnterSemi:4, + CrossChampionshipState_EnterFinal:2, + } + Def_Notify_WorldKey_GameWorldBossRebornCross = 'BossRebornCross_%s_%s' # 跨服世界boss重生, 参数为(zoneID, bossID) Def_Notify_WorldKey_GameWorldBossReborn = 'BossReborn_%s' # 世界boss重生, 参数为(bossID) Def_Notify_WorldKey_BossKilledCnt = 'BossKilledCnt_%s' # boss击杀次数, 参数为NPCID @@ -245,6 +285,7 @@ OperationActionName_HorsePetFeast = "ActHorsePetFeast" # 骑宠盛宴活动 OperationActionName_GarbageSorting = "ActGarbageSorting" # 垃圾分类活动 OperationActionName_XianXiaMJ = "ActXianXiaMJ" # 仙匣秘境活动 +OperationActionName_GodGift = "ActGodGift" # 天帝礼包活动 #节日活动类型列表 - 该类型无视开服天,日期到了就开启 FeastOperationActionNameList = [OperationActionName_FeastWeekParty, OperationActionName_FeastRedPacket, OperationActionName_RechargeRebateGold, OperationActionName_GrowupBuy, @@ -263,7 +304,7 @@ OperationActionName_DailyGiftbag, OperationActionName_SingleRecharge, OperationActionName_CollectWords, OperationActionName_ManyDayRecharge, OperationActionName_Turntable, OperationActionName_HorsePetFeast, OperationActionName_GarbageSorting, - OperationActionName_XianXiaMJ, + OperationActionName_XianXiaMJ, OperationActionName_GodGift, ] + FeastOperationActionNameList #需要记录开启活动时的世界等级的运营活动 NeedWorldLVOperationActNameList = [OperationActionName_FairyCeremony, OperationActionName_WishingWell, @@ -277,6 +318,7 @@ OperationActionName_FeastLogin, OperationActionName_XianXiaMJ, OperationActionName_FeastWish, OperationActionName_FeastTravel, OperationActionName_ManyDayRecharge, OperationActionName_SingleRecharge, + OperationActionName_GodGift, ] #支持多活动分组编号的活动名 @@ -285,17 +327,18 @@ OperationActionName_SpringSale, OperationActionName_FlashSale, OperationActionName_ManyDayRecharge, OperationActionName_SingleRecharge, OperationActionName_Turntable, OperationActionName_HorsePetFeast, OperationActionName_GarbageSorting, - OperationActionName_XianXiaMJ, + OperationActionName_XianXiaMJ, OperationActionName_GodGift, ] #跨服运营活动表名定义 CrossActName_CTGBillboard = "CrossActCTGBillboard" # 充值排行榜 +CrossActName_AllRecharge = "CrossActAllRecharge" # 全民充值 CrossActName_LuckyCloudBuy = "CrossActLuckyCloudBuy" # 幸运云购 #跨服运营活动列表 -CrossActNameList = [CrossActName_CTGBillboard, CrossActName_LuckyCloudBuy] +CrossActNameList = [CrossActName_CTGBillboard, CrossActName_AllRecharge, CrossActName_LuckyCloudBuy] #需要锁定活动分区分配直到活动结束的跨服运营活动,即使热更分区配置,也不会改变正在活动中的分区设定,直到活动结束 -CrossActLockServerGroupIDList = [CrossActName_CTGBillboard] +CrossActLockServerGroupIDList = [CrossActName_CTGBillboard, CrossActName_AllRecharge] #活动信息字典key定义 ActKey_ID = "ID" # 活动ID,唯一标识的ID,一般是活动开启的time值 @@ -306,6 +349,7 @@ ActKey_TemplateID = "TemplateID" # 当前活动模板ID ActKey_WorldLV = "WorldLV" # 活动开启时世界等级 ActKey_WorldLVList = "WorldLVList" # 活动每天的世界等级列表 +ActKey_StartDateSync = "StartDateSync" # 特殊指定同步前端的开始日期 ActKey_ServerIDRangeList = "ServerIDRangeList" # 活动服务器ID范围信息 ActKey_IpyDataInfo = "IpyDataInfo" # 活动对应 IpyData 信息 @@ -755,7 +799,9 @@ Def_CBT_BattlefieldWJoin, # 跨服战场每周参与榜 151 Def_CBT_BattlefieldWCall, # 跨服战场每周召集榜 152 Def_CBT_BattlefieldWScore, # 跨服战场每周积分榜 153 -) = range(150, 153 + 1) +Def_CBT_BattlefieldWScoreLastWeek, # 跨服战场上周积分榜 154 +Def_CBT_YaomoBossHurt, # 跨服妖魔boss最新一次伤血排名 155 +) = range(150, 155 + 1) #职业对应战力排行榜类型 JobFightPowerBillboardDict = { @@ -997,7 +1043,13 @@ CDBPlayerRefresh_CharmLV, # 魅力等级 239 CDBPlayerRefresh_BTGMPoint, # BT版GM令 240 CDBPlayerRefresh_GuShenMoney, # 古神币 241 -) = range(146, 242) +CDBPlayerRefresh_GongdePoint, # 功德点 242 +CDBPlayerRefresh_CashPoint, # 现金点 243 +CDBPlayerRefresh_ExAttr20, # ExAttr20 244 +CDBPlayerRefresh_JiYuan, # 机缘币 245 +CDBPlayerRefresh_BTGMYuE, # BTGM余额 246 +CDBPlayerRefresh_SuccessScore, # 成就积分 247 +) = range(146, 248) TYPE_Price_Gold_Paper_Money = 5 # 金钱类型,(先用礼券,再用金子) TYPE_Price_Family_Contribution = 6 # 战盟贡献度(活跃度转换得来) @@ -1020,6 +1072,19 @@ TYPE_Price_Environment = 32 # 环保值 TYPE_Price_BTGMPoint = 33 # BT版GM令 TYPE_Price_GuShenMoney = 34 # 古神币 +TYPE_Price_GongdePoint = 35 # 功德点 +TYPE_Price_CashPoint = 36 # 现金点 +TYPE_Price_JiYuan = 37 # 机缘币 +TYPE_Price_BTGMYuE = 38 # GM余额 +TYPE_Price_SuccessSocre = 39 # 成就积分 + +#key可用于遍历所有货币,value仅GM相关会用到 +MoneyNameDict = { + 1:"仙玉", 2:"绑玉", 3:"铜钱", 6:"战盟贡献度", 10:"战盟仓库积分", 13:"境界修行点", 14:"符印融合石", 15:"仙盟活跃令", + 16:"助战积分", 18:"荣誉", 19:"Boss积分", 23:"符印精华", 24:"符印碎片", 25:"寻宝积分", 26:"集市额度", 27:"丹精", 28:"魂尘", + 29:"聚魂碎片", 30:"核心环", 31:"功能特权令", 32:"环保值", 33:"GM令", 34:"古神币", 35:"功德点", + 39:"成就积分" + } #以下是旧的金钱类型 TYPE_Price_Magic_Integral = 101 # 魔方寻宝积分 @@ -1047,6 +1112,8 @@ TYPE_Price_Environment:CDBPlayerRefresh_Environment, TYPE_Price_BTGMPoint:CDBPlayerRefresh_BTGMPoint, TYPE_Price_GuShenMoney:CDBPlayerRefresh_GuShenMoney, + TYPE_Price_GongdePoint:CDBPlayerRefresh_GongdePoint, + TYPE_Price_SuccessSocre:CDBPlayerRefresh_SuccessScore, } # 支持负值的货币及对应0418刷新类型 @@ -1095,6 +1162,7 @@ GameFuncID_Arena = 195 # 竞技场 GameFuncID_FaQi = 199 # 法器 GameFuncID_LianTi = 207 # 炼体 +GameFuncID_Championship = 210 # 排位 # 以下为暂时无用的 GameFuncID_Truck = 33 # 运镖 GameFuncID_RunDaily = 34 # 日常跑环 @@ -1201,14 +1269,14 @@ Def_UniversalGameRecType_BossInfo, # boss信息29 Def_UniversalGameRecType_CrossBossInfo, # 跨服boss信息 30 Def_UniversalGameRecType_BossFirstKill, # boss首杀 31 - Def_UniversalGameRecType_32, - Def_UniversalGameRecType_33, - Def_UniversalGameRecType_34, - Def_UniversalGameRecType_35, - Def_UniversalGameRecType_36, - Def_UniversalGameRecType_37, - Def_UniversalGameRecType_38, - Def_UniversalGameRecType_39, + Def_UniversalGameRecType_CrossCollect, # 跨服采集记录信息 32 + Def_UniversalGameRecType_CrossChampionshipGroup, # 跨服排位争霸赛分组信息 33 + Def_UniversalGameRecType_CrossChampionshipGuess, # 跨服排位争霸赛竞猜记录信息 34 + Def_UniversalGameRecType_CrossChampionshipOfficial, # 跨服排位争霸赛最终排名官职信息 35 + Def_UniversalGameRecType_CrossChampionshipOffChallenge, # 跨服排位争霸赛官职挑战信息 36 + Def_UniversalGameRecType_CrossActAllRecharge, # 跨服全服充值活动信息 37 + Def_UniversalGameRecType_CrossBattleChampionGroup, # 跨服战场冠军赛分组信息 38 + Def_UniversalGameRecType_CrossYaomoBossHurtInfo, # 跨服妖魔boss伤血信息 39 Def_UniversalGameRecType_40, Def_UniversalGameRecType_RedPacketRecord, # 红包产出结果记录41 Def_UniversalGameRecType_42, @@ -1381,6 +1449,7 @@ CrossServerMsg_NPCInfoRet = "NPCInfoRet" # 跨服地图NPC信息 CrossServerMsg_CollectNPCOK = "CollectNPCOK" # 采集NPC完成 CrossServerMsg_EnterFBRet = "EnterFBRet" # 请求进入跨服副本返回信息 +CrossServerMsg_EnterVSRoomRet = "EnterVSRoomRet" # 请求进入跨服PK房间副本返回信息 CrossServerMsg_FBEnd = "FBEnd" # 完成跨服副本 CrossServerMsg_NPCAttackCount = "NPCAttackCount" # 攻击NPC次数记录 CrossServerMsg_SendMail = "SendMail" # 发送邮件,已知玩家目标服务器,主动发送 @@ -1397,6 +1466,15 @@ CrossServerMsg_DebugAnswer = "DebugAnswer" # DebugAnswer CrossServerMsg_ActDropSpecItem = "ActDropSpecItem" # 特殊掉落验证返回 CrossServerMsg_CrossAssist = "CrossAssist" # 跨服协助 +CrossServerMsg_ChampionshipState = "ChampionshipState" # 跨服排位争霸赛状态信息 +CrossServerMsg_ChampionshipPlayer = "ChampionshipPlayer"# 跨服排位争霸赛参赛玩家信息 +CrossServerMsg_ChampionshipGroup = "ChampionshipGroup" # 跨服排位争霸赛分组信息 +CrossServerMsg_ChampionshipGuess = "ChampionshipGuess" # 跨服排位争霸赛竞猜信息 +CrossServerMsg_ChampionshipOfficial = "ChampionshipOfficial" # 跨服排位争霸赛官职信息 +CrossServerMsg_ChampionshipDailyOfficial = "ChampionshipDailyOfficial" # 跨服排位争霸赛每日官职信息 +CrossServerMsg_ActAllRechargeInfo = "ActAllRechargeInfo"# 跨服全民充值信息 +CrossServerMsg_CrossDailyActionState = "CrossDailyActionState" # 跨服日常任务状态信息 +CrossServerMsg_CrossYaomoBossHurtInfo = "CrossYaomoBossHurtInfo" # 跨服妖魔boss玩家伤害信息 # 子服发送跨服信息定义 ClientServerMsg_ServerInitOK = "ServerInitOK" # 子服启动成功 @@ -1424,6 +1502,15 @@ ClientServerMsg_BattlefieldCallKick = "BattlefieldCallKick" # 跨服战场召集 - 踢出 ClientServerMsg_ActDropSpecItem = "ActDropSpecItem" # 活动特殊掉落 ClientServerMsg_CrossAssist = "CrossAssist" # 跨服协助 +ClientServerMsg_ChampionshipOfficialApply = "ChampionshipOfficialApply" # 跨服排位申请官职 +ClientServerMsg_ChampionshipOfficialApplyReply = "ChampionshipOfficialApplyReply" # 跨服排位官职申请回应 +ClientServerMsg_ChampionshipOfficialKick = "ChampionshipOfficialKick" # 跨服排位辞退下级仙官 +ClientServerMsg_ChampionshipOfficialLeave = "ChampionshipOfficialLeave" # 跨服排位主动离任仙官 +ClientServerMsg_ChampionshipOfficialChallenge = "ChampionshipOfficialChallenge" # 跨服排位挑战仙官 +ClientServerMsg_ChampionshipGuess = "ChampionshipGuess" # 跨服排位竞猜 +ClientServerMsg_ChampionshipWorship = "ChampionshipWorship" # 跨服排位膜拜 +ClientServerMsg_ActAllRechargeValue = "ActAllRechargeValue" # 跨服全民充值额度 +ClientServerMsg_CrossYaomoBossHurtAward = "CrossYaomoBossHurtAward" # 跨服妖魔boss玩家伤害领奖 #跨服广播类型定义 CrossNotify_CrossAct = "CrossAct" @@ -1528,7 +1615,7 @@ )=range(5) # 战斗力模块类型 -Def_MFPType_Max = 29 +Def_MFPType_Max = 32 ModuleFightPowerTypeList = ( Def_MFPType_Role, # 角色 0 Def_MFPType_Equip, # 装备(装备本身) 1 @@ -1558,6 +1645,9 @@ Def_MFPType_Love, # 情缘 25 Def_MFPType_Charm, # 魅力 26 Def_MFPType_LianTi, # 炼体 27 +Def_MFPType_Enchant, # 附魔 28 +Def_MFPType_Gubao, # 古宝 29 +Def_MFPType_Shentong, # 神通 30 Def_MFPType_Other, # 其他 ) = range(Def_MFPType_Max) @@ -1669,6 +1759,10 @@ DailyActionID_CrossBattlefield, # 跨服战场 35 ) = range(1, 35 + 1) +# 跨服每日活动编号定义, 从150开始 +CrossDailyActionIDList = ( +CrossDailyActionID_YaomoBoss, # 妖魔boss 150 +) = range(150, 150 + 1) # 成就类型定义 SuccessTypeList = ( @@ -1835,7 +1929,19 @@ SuccType_Battlefield_Wall, # 古神战场 - 累计采集积分墙 x次 161 SuccType_Battlefield_BillFirst, # 古神战场 - 任意周榜榜首 x次 162 SuccType_Battlefield_BillIn, # 古神战场 - 结算时累计上榜 x次 163 -) = range(1, 164) +SuccType_ActivityPlace, # 活跃放置x次 164 +SuccType_UseStoveByType, # 使用丹药X枚 165 +SuccType_Arena, # 参与竞技场x次 166 +SuccType_KillCrossPenglaiBoss, # 击杀蓬莱仙境bossx只 167 +SuccType_KillCrossDemonLandBoss, # 击杀魔化之地bossx只 168 +SuccType_EquipPlusClass, # X阶装备强化总等级X级 169 +SuccType_EquipStarClass, # X阶装备升星总等级X星 170 +SuccType_EquipStoneClass, # X阶装备宝石总等级X级 171 +SuccType_EquipWashClass, # X阶装备洗炼总等级X级 172 +SuccType_EquipPlusTotal, # 全身强化总等级X级 173 +SuccType_EquipStarTotal, # 全身升星总星数X星 174 +SuccType_EquipWashTotal, # 全身洗炼总等级X级 175 +) = range(1, 176) # 节日红包成就类型 FeastRedPackSuccessTypeList = range(SuccType_FeastRedPack_TalkWorld, SuccType_FeastRedPack_FBSweep + 1) @@ -1847,7 +1953,7 @@ UnDownCheckSuccessTypeList = [ SuccType_GodWeapon, SuccType_MainTaskNode,SuccType_PassWagicWeapon, - SuccType_KillSpecificNPC, SuccType_UseStoveBylv, + SuccType_KillSpecificNPC, SuccType_UseStoveBylv, SuccType_UseStoveByType, SuccType_Pray,SuccType_PetClassLV, SuccType_QueenRelics,SuccType_XMZZConWin, SuccType_Collect,SuccType_DogzBattle, @@ -1865,6 +1971,10 @@ SuccType_EquipPlus:[0], # 阶不向下适配 SuccType_EquipWash:[0], # 阶不向下适配 SuccType_EquipStar:[0], # 阶不向下适配 + SuccType_EquipPlusClass:[0], # 阶不向下适配 + SuccType_EquipStarClass:[0], # 阶不向下适配 + SuccType_EquipStoneClass:[0], # 阶不向下适配 + SuccType_EquipWashClass:[0], # 阶不向下适配 } #传进来的条件满足配置的条件列表中的一个就行的成就类型 -- Gitblit v1.8.0