ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py
@@ -371,6 +371,8 @@ Def_WorldKey_BossIsGeTui = "BossGeTui%s" #当前复活通知 Def_WorldKey_OperationActionState = "OperationActState_%s" #运营活动状态,参数为运营活动名 Def_WorldKey_BossRebornNeedPoint = "BossRebornNeedPoint" #boss复活需要总点数 Def_WorldKey_BossIsAlive = 'BossIsAlive_%s' #boss是否活着 Def_WorldKey_IsGameWorldInit = 'IsGameWorldInit' #GameWold是否初始化完成 #--------------------------------------------------------------------- #个人时间间隔 TYPE_Player_Tick_Requestkey = 0 # 玩家请求处理间隔 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldProcess.py
@@ -1207,7 +1207,7 @@ # @remarks 先请求排行榜信息,然后SetTickTypeCount,设置需要保存的时间种类 def InitGameWorld(tick): #标记GameWorld初始化完成 GameWorld.GetGameWorld().SetDict(ChConfig.Def_WorldKey_IsGameWorldInit, 1) GameWorld.GetGameWorld().SetDict(ChConfig.Def_WorldKey_IsGameWorldInit, int(time.time())) #初始化游戏时钟 GameWorld.GetGameWorld().SetTickTypeCount(ChConfig.TYPE_Tick_Count) #初始话开服时间、星期几 @@ -1216,6 +1216,7 @@ if initOpenServerTime <= 0 or openServerWeekday <= 0: #记录首次开发时间(现实时间戳) PlayerDBGSEvent.SetInitOpenServerTime(initOpenServerTime if initOpenServerTime else int(time.time())) #初始化家族数量 GameWorld.GetFamilyManager().SetFamilyUpperLimitCount(ChConfig.Def_Family_MaxCnt) #排序元宝交易平台 @@ -1388,6 +1389,9 @@ # 通知战盟相关活动开启状态 fadState = PlayerDBGSEvent.GetDBGSTrig_ByKey(ShareDefine.Def_Notify_WorldKey_FamilyActivityDayState) GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_FamilyActivityDayState, fadState) # 通知开启服务器时间 initGameWorldTime = GameWorld.GetGameWorld().GetDictByKey(ChConfig.Def_WorldKey_IsGameWorldInit) GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_InitGameWorldTime, initGameWorldTime) # 通知世界boss奖励信息 GameWorldBoss.OnMapServerInitOK() ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -143,7 +143,7 @@ Def_Notify_WorldKey_ReloadJpegCaptcha = 'ReloadJpegCaptcha' # 重读tex图形验证码 Def_Notify_WorldKey_GameServerScriptReloadVersion = 'GameServerScriptReloadVersion' # GameServer 脚本重读版本标记 Def_Notify_WorldKey_MapServerScriptReloadVersion = 'MapServerScriptReloadVersion' # MapServer 脚本重读版本标记 Def_Notify_WorldKey_InitGameWorldTime = "InitGameWorldTime" #启动服务器时间 Def_Notify_WorldKey_OperationActionInfo = "OperationActionInfo_%s" # 运营活动信息,参数为运营活动名 Def_Notify_WorldKey_DailyActionState = "DailyActionState_%s" # 日常活动状态,参数为日常活动ID Def_Notify_WorldKey_FBEnterTimeLimiitMapID = "FBEnterTimeLimiitMapID" # 进入副本有时间限制的地图ID列表 @@ -1506,7 +1506,7 @@ SuccType_XXX24 , # 废弃24 SuccType_XXX25, # 废弃25 SuccType_EquipPlus, # 强化x次成就26 SuccType_EquipPlusLV, # x件装备强化等级达到x级27 SuccType_EquipPlusLV, # x件装备强化等级达到x级27 (已废弃) SuccType_KillWorldBoss, # 击杀世界bossx次成就(有伤害就算)28 SuccType_XXX29, # 废弃29 SuccType_PassWagicWeapon, # 通关法宝副本30 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py
@@ -1569,3 +1569,16 @@ #发送封包 SendEventPack("MagicWeaponActive", dataDict, curPlayer) return ## 玩家上线成就检查 # @param tagObjType: 攻击方类型 # @param tagObj: 攻击方ID # @param mapID: 死亡玩家所在地图ID # @return def DR_CheckOldPlayerSuccess(curPlayer): dataDict = {'PlayerID':curPlayer.GetPlayerID(), "PlayerName":curPlayer.GetPlayerName(), 'AccID':curPlayer.GetAccID()} #发送封包 SendEventPack("CheckOldPlayerSuccess", dataDict, curPlayer) return ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipPlus.py
@@ -162,7 +162,7 @@ PlayerControl.WorldNotify(0, "StrengthenCongratulation", msgParamList) # 成就 PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_EquipPlusLV, 1, [updPlusLV]) #PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_EquipPlusLV, 1, [updPlusLV]) ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py
@@ -44,6 +44,7 @@ import Operate_EquipSuitCompose import PlayerDogz import QuestCommon import DataRecordPack ## 获取成就字典信息值 @@ -237,52 +238,50 @@ # @param None # @return def __CheckOldPlayerSuccess(curPlayer): ''' 成就版本更新老玩家检查 正式上线后,成就的修改或者增加,一般是增加新成就,则需要对老玩家成就版本进行校正,检查成就完成情况 成就版本号递增 ''' 成就版本更新老玩家检查 每次启动服务后 玩家第一次上线检查成就完成情况 ''' Versions = 2 #版本号,往上增加 #Versions = 2 #版本号,往上增加 initGameWorldTime = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_InitGameWorldTime) # 上线需要检查老玩家成就完成情况类型{成就类型:维护版本号, ...} NeedCheckSuccTypeDict = { ShareDefine.SuccType_GetMagicWeapon:2, ShareDefine.SuccType_PassRuneTower:2, ShareDefine.SuccType_GodWeapon:2, ShareDefine.SuccType_HorseAllLV:2, ShareDefine.SuccType_EquipPlusLV:2, ShareDefine.SuccType_EquipColorItem:2, ShareDefine.SuccType_EquipArmor:2, ShareDefine.SuccType_EquipWeapon:2, ShareDefine.SuccType_InlayRune:2, ShareDefine.SuccType_RuneLvUp:2, ShareDefine.SuccType_RealmlvUp:2, ShareDefine.SuccType_PetClassLV:2, ShareDefine.SuccType_InlayStone1:2, ShareDefine.SuccType_InlayStone2:2, ShareDefine.SuccType_XJMJGetExp:2, ShareDefine.SuccType_EquipWashLV1:2, ShareDefine.SuccType_EquipWashLV2:2, ShareDefine.SuccType_EquipWashLV3:2, ShareDefine.SuccType_EquipWing:2, ShareDefine.SuccType_MWSkillUp:2, ShareDefine.SuccType_EquipSuit:2, ShareDefine.SuccType_FamilyTechLV:2, ShareDefine.SuccType_AlchemyLV:2, ShareDefine.SuccType_VIPLV:2, ShareDefine.SuccType_StoneTotalLV:2, ShareDefine.SuccType_XBXZ:2, ShareDefine.SuccType_DogzBattle:2, ShareDefine.SuccType_DogzEquipPlus:2, ShareDefine.SuccType_MainTaskNode:2, } NeedCheckSuccTypeList = [ ShareDefine.SuccType_GetMagicWeapon, ShareDefine.SuccType_PassRuneTower, ShareDefine.SuccType_GodWeapon, ShareDefine.SuccType_HorseAllLV, #ShareDefine.SuccType_EquipPlusLV, ShareDefine.SuccType_EquipColorItem, ShareDefine.SuccType_EquipArmor, ShareDefine.SuccType_EquipWeapon, ShareDefine.SuccType_InlayRune, ShareDefine.SuccType_RuneLvUp, ShareDefine.SuccType_RealmlvUp, ShareDefine.SuccType_PetClassLV, ShareDefine.SuccType_InlayStone1, ShareDefine.SuccType_InlayStone2, ShareDefine.SuccType_XJMJGetExp, ShareDefine.SuccType_EquipWashLV1, ShareDefine.SuccType_EquipWashLV2, ShareDefine.SuccType_EquipWashLV3, ShareDefine.SuccType_EquipWing, ShareDefine.SuccType_MWSkillUp, ShareDefine.SuccType_EquipSuit, ShareDefine.SuccType_FamilyTechLV, ShareDefine.SuccType_AlchemyLV, ShareDefine.SuccType_VIPLV, ShareDefine.SuccType_StoneTotalLV, ShareDefine.SuccType_XBXZ, ShareDefine.SuccType_DogzBattle, ShareDefine.SuccType_DogzEquipPlus, ShareDefine.SuccType_MainTaskNode, ] curCheckVersion = GetPDictValue(curPlayer, ChConfig.Def_PDict_Success_CheckVersion) if curCheckVersion == initGameWorldTime: GameWorld.DebugLog(' 本次开启服务器处理过成就检查,不再处理 ', curPlayer.GetID()) return GameWorld.DebugLog("更新老玩家上线检查成就curCheckVersion=%s" % (curCheckVersion)) ipyDataMgr = IpyGameDataPY.IPY_Data() for succType, version in NeedCheckSuccTypeDict.items(): if curCheckVersion >= version: continue for succType in NeedCheckSuccTypeList: if succType == ShareDefine.SuccType_GetMagicWeapon: for i in xrange(ipyDataMgr.GetTreasureCount()): @@ -389,8 +388,9 @@ if QuestCommon.GetHadFinishMainMission(curPlayer, missionID): DoAddSuccessProgress(curPlayer, succType, 1, [missionID]) SetPDictValue(curPlayer, ChConfig.Def_PDict_Success_CheckVersion, Versions) GameWorld.DebugLog("更新老玩家上线检查成就updCheckVersions=%s" % (Versions)) DataRecordPack.DR_CheckOldPlayerSuccess(curPlayer) SetPDictValue(curPlayer, ChConfig.Def_PDict_Success_CheckVersion, initGameWorldTime) GameWorld.DebugLog("更新老玩家上线检查成就updCheckVersions=%s" % (initGameWorldTime), curPlayer.GetID()) return ## 成就OnWeek ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -143,7 +143,7 @@ Def_Notify_WorldKey_ReloadJpegCaptcha = 'ReloadJpegCaptcha' # 重读tex图形验证码 Def_Notify_WorldKey_GameServerScriptReloadVersion = 'GameServerScriptReloadVersion' # GameServer 脚本重读版本标记 Def_Notify_WorldKey_MapServerScriptReloadVersion = 'MapServerScriptReloadVersion' # MapServer 脚本重读版本标记 Def_Notify_WorldKey_InitGameWorldTime = "InitGameWorldTime" #启动服务器时间 Def_Notify_WorldKey_OperationActionInfo = "OperationActionInfo_%s" # 运营活动信息,参数为运营活动名 Def_Notify_WorldKey_DailyActionState = "DailyActionState_%s" # 日常活动状态,参数为日常活动ID Def_Notify_WorldKey_FBEnterTimeLimiitMapID = "FBEnterTimeLimiitMapID" # 进入副本有时间限制的地图ID列表 @@ -1506,7 +1506,7 @@ SuccType_XXX24 , # 废弃24 SuccType_XXX25, # 废弃25 SuccType_EquipPlus, # 强化x次成就26 SuccType_EquipPlusLV, # x件装备强化等级达到x级27 SuccType_EquipPlusLV, # x件装备强化等级达到x级27 (已废弃) SuccType_KillWorldBoss, # 击杀世界bossx次成就(有伤害就算)28 SuccType_XXX29, # 废弃29 SuccType_PassWagicWeapon, # 通关法宝副本30