9415 【BT5】【后端】古神战场(初版:包含战场副本外的所有功能;副本中暂仅支持击杀玩家玩法 冲突)
| | |
| | | import CrossRealmPK
|
| | | import CrossRealmMsg
|
| | | import CrossRealmPlayer
|
| | | import CrossBattlefield
|
| | | import CrossActionControl
|
| | | import PlayerFBHelpBattle
|
| | | import PlayerFamilyRedPacket
|
| | |
| | | GameWorldActionControl.Dispose_FBStateTime()
|
| | | #跨服PK
|
| | | CrossRealmPK.OnMinuteProcess()
|
| | | CrossBattlefield.OnMinuteProcess()
|
| | | #处理重开服务器后, 活动继续开启逻辑根据天数
|
| | | #GameWorldActionControl.Dispose_Action_GoOn_ByDay(tick)
|
| | | #触发世界等级
|
| | |
| | | GameWorldArena.OnServerStart()
|
| | | #跨服PK
|
| | | CrossRealmPK.OnGameServerInitOK()
|
| | | #跨服战场
|
| | | CrossBattlefield.OnServerStart()
|
| | | #红包
|
| | | PlayerFamilyRedPacket.OnServerStart()
|
| | | #云购
|
| | |
| | |
|
| | | GameWorldArena.OnServerStart()
|
| | |
|
| | | CrossBattlefield.OnServerStart()
|
| | | |
| | | PlayerDBGSEvent.SetInitOpenServerTime(setOpenServerTime)
|
| | |
|
| | | ReadChConfig.ReloadConfig()
|
| | |
| | |
|
| | | # 跨服PK
|
| | | CrossRealmPK.OnMapServerInitOK()
|
| | | #跨服战场
|
| | | CrossBattlefield.OnMapServerInitOK()
|
| | | # 本服竞技场
|
| | | GameWorldArena.SendMapServerArenaInfo()
|
| | | # 幸运云购
|
| | |
| | | ChPlayer.SavePlayerLVData()
|
| | | PlayerFBHelpBattle.OnServerClose()
|
| | | CrossActionControl.OnServerClose()
|
| | | CrossBattlefield.OnServerClose()
|
| | | PlayerFamilyRedPacket.OnServerClose()
|
| | | CrossLuckyCloudBuy.OnServerClose()
|
| | | GameWorldArena.OnServerClose()
|
| | |
| | | import PlayerFB
|
| | | import PlayerLove
|
| | | import PlayerCharm
|
| | | import CrossRealmPlayer
|
| | | import CrossBattlefield
|
| | | #---------------------------------------------------------------------
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | |
| | | PlayerTeam.OnPlayerLoginRefreshTeam(curPlayer, tick)
|
| | | PlayerCompensation.NotifyPlayerCompensation(curPlayer)
|
| | | __UpdOnedayJobPlayerLoginoffTime(curPlayer)
|
| | | CrossRealmPlayer.OnPlayerLogin(curPlayer)
|
| | |
|
| | | if not PlayerControl.GetIsTJG(curPlayer):
|
| | | # 只有通知逻辑的应该放此处减少IO,如有逻辑处理存储等不可放在此处
|
| | |
| | | PlayerCharm.OnPlayerLogin(curPlayer)
|
| | | #情缘
|
| | | PlayerLove.OnPlayerLogin(curPlayer)
|
| | | #跨服战场
|
| | | CrossBattlefield.OnPlayerLogin(curPlayer)
|
| | |
|
| | | if isMixServerFirstLogin:
|
| | | PlayerCharm.OnMixServerFirstLogin(curPlayer)
|
| | |
| | | import GameWorld
|
| | | import PlayerDBOper
|
| | | import IPY_GameServer
|
| | | import PlayerDBGSEvent
|
| | | import IpyGameDataPY
|
| | | import CrossRealmMsg
|
| | | import ShareDefine
|
| | |
| | | return
|
| | |
|
| | | def CrossNotifyCode(serverGroupID, playerID, msgMark, msgParamList=[]):
|
| | | NotifyCodeCross(serverGroupID, playerID, msgMark, msgParamList)
|
| | | return
|
| | |
|
| | | def NotifyCodeCross(serverGroupID, playerID, msgMark, msgParamList=[]):
|
| | | crossNotifyList = [{"Type":ShareDefine.CrossNotify_Player, "Params":[playerID, msgMark, msgParamList]}]
|
| | | CrossNotify([serverGroupID], crossNotifyList)
|
| | | return
|
| | |
|
| | | def WorldNotifyCross(serverGroupIDList, country, msgMark, msgParamList=[]):
|
| | | crossNotifyList = [GetCrossWorldNotifyInfo(country, msgMark, msgParamList)]
|
| | | CrossNotify(serverGroupIDList, crossNotifyList)
|
| | | return
|
| | |
|
| | | def GetCrossWorldNotifyInfo(country, msgMark, msgParamList=[]):
|
| | |
| | |
|
| | | if notifyType == ShareDefine.CrossNotify_World:
|
| | | country, msgMark, msgParamList = params
|
| | | openServerDayLimit = IpyGameDataPY.GetFuncCfg("CrossRealmCfg", 1)
|
| | | openServerDay = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ServerDay) + 1
|
| | | if openServerDay < openServerDayLimit:
|
| | | GameWorld.DebugLog("开服天不足,不处理该跨服广播! openServerDay=%s < %s" % (openServerDay, openServerDayLimit))
|
| | | continue
|
| | | WorldNotify(country, msgMark, msgParamList)
|
| | | elif notifyType == ShareDefine.CrossNotify_CrossAct:
|
| | | country, msgMark, msgParamList = params
|
| | |
| | |
|
| | | Def_Notify_WorldKey_LuckyCloudBuyInfo = "LuckyCloudBuyInfo" # 本服幸运云购最新一期信息
|
| | |
|
| | | Def_Notify_WorldKey_CrossBattlefieldCallTeamInfo = "CrossBattlefieldCallTeamInfo" # 跨服战场召集队伍信息
|
| | |
|
| | | 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
|
| | |
| | | '''
|
| | | CrossBillboardTypeList = (
|
| | | Def_CBT_ActCTG, # 跨服运营活动 - 充值榜 150
|
| | | ) = range(150, 150 + 1)
|
| | | Def_CBT_BattlefieldWJoin, # 跨服战场每周参与榜 151
|
| | | Def_CBT_BattlefieldWCall, # 跨服战场每周召集榜 152
|
| | | Def_CBT_BattlefieldWScore, # 跨服战场每周积分榜 153
|
| | | ) = range(150, 153 + 1)
|
| | |
|
| | | #职业对应战力排行榜类型
|
| | | JobFightPowerBillboardDict = {
|
| | |
| | | Def_UniversalGameRecType_20,
|
| | | Def_UniversalGameRecType_LuckyCloudBuyNum, # 幸运云购购买号码记录 21
|
| | | Def_UniversalGameRecType_LuckyCloudBuyLottery, # 幸运云购开奖记录 22
|
| | | Def_UniversalGameRecType_23,
|
| | | Def_UniversalGameRecType_CrossBattlefieldBuy, # 玩家购买的跨服战场 23
|
| | | Def_UniversalGameRecType_UpdatePlayerName, # 玩家改名正在改名中的信息24
|
| | | Def_UniversalGameRecType_BossDropGoodItemInfo, # boss掉落好物品信息记录25
|
| | | Def_UniversalGameRecType_26,
|
| | |
| | | Def_List_EscapeSequence = ['\a', '\b', '\f', '\n', '\r', '\t', '\v', '\\', '\'', '\"', '\0']
|
| | |
|
| | | #阵营 三种 中立 正义 邪恶
|
| | | [
|
| | | CampTypeList = [
|
| | | CampType_Neutral, #中立
|
| | | CampType_Justice, #正义(与 Def_ID1Win 一致)
|
| | | CampType_Evil, #邪恶(与 Def_ID2Win 一致)
|
| | |
| | | CrossServerMsg_LuckyCloudBuyNum = "LuckyCloudBuyNum" # 幸运云购购买记录通知
|
| | | CrossServerMsg_LuckyCloudBuyLottery = "LuckyCloudBuyLottery" # 幸运云购开奖记录通知
|
| | | CrossServerMsg_CrossServerTime = "CrossServerTime" # 跨服时间同步
|
| | | CrossServerMsg_BattlefieldBuy = "BattlefieldBuy" # 跨服战场购买信息
|
| | | CrossServerMsg_BattlefieldState = "BattlefieldState" # 跨服战场状态信息
|
| | | CrossServerMsg_BattlefieldOver = "BattlefieldOver" # 跨服战场结算信息
|
| | | CrossServerMsg_DebugAnswer = "DebugAnswer" # DebugAnswer
|
| | |
|
| | | # 子服发送跨服信息定义
|
| | | ClientServerMsg_ServerInitOK = "ServerInitOK" # 子服启动成功
|
| | |
| | | ClientServerMsg_EnterFB = "EnterFB" # 请求进入跨服副本
|
| | | ClientServerMsg_AddBuff = "AddBuff" # 添加BUFF
|
| | | ClientServerMsg_LuckyCloudBuy = "LuckyCloudBuy" # 幸运云购
|
| | | ClientServerMsg_BattlefieldBuyOpen = "BattlefieldBuyOpen" # 跨服战场购买召集
|
| | | ClientServerMsg_BattlefieldCallJoin = "BattlefieldCallJoin" # 跨服战场召集 - 加入
|
| | | ClientServerMsg_BattlefieldCallKick = "BattlefieldCallKick" # 跨服战场召集 - 踢出
|
| | |
|
| | | #跨服广播类型定义
|
| | | CrossNotify_CrossAct = "CrossAct"
|
| | |
| | | DailyActionID_SkyTreasureBox, # 天降宝箱 32
|
| | | DailyActionID_Arena, # 竞技场 33
|
| | | DailyActionID_CrossDemonLand, # 跨服魔化之地Boss 34
|
| | | ) = range(1, 34 + 1)
|
| | |
|
| | |
|
| | | DailyActionID_CrossBattlefield, # 跨服战场 35
|
| | | ) = range(1, 35 + 1)
|
| | |
|
| | |
|
| | | # 成就类型定义
|
| | |
| | | Def_FBMapID_CrossGrasslandLing = 32040
|
| | | #跨服仙草园
|
| | | Def_FBMapID_CrossGrasslandXian = 32050
|
| | | #跨服战场
|
| | | Def_FBMapID_CrossBattlefield = 32060
|
| | | #竞技场战斗
|
| | | Def_FBMapID_ArenaBattle = 31290
|
| | | #情缘副本
|
| | |
| | | ClientCustomScene = [Def_FBMapID_PersonalBoss, Def_FBMapID_ArenaBattle]
|
| | |
|
| | | #注册上传跨服服务器数据后直接进入跨服服务器的地图
|
| | | RegisterEnter_CrossServerMapIDList = [Def_FBMapID_CrossPenglai, Def_FBMapID_CrossDemonLand, Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian]
|
| | | RegisterEnter_CrossServerMapIDList = [Def_FBMapID_CrossPenglai, Def_FBMapID_CrossDemonLand, Def_FBMapID_CrossDemonKing, |
| | | Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian, Def_FBMapID_CrossBattlefield,
|
| | | ]
|
| | | #跨服地图
|
| | | Def_CrossMapIDList = [Def_FBMapID_CrossRealmPK, Def_FBMapID_CrossPenglai, Def_FBMapID_CrossDemonLand, Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian]
|
| | | Def_CrossMapIDList = RegisterEnter_CrossServerMapIDList + [Def_FBMapID_CrossRealmPK]
|
| | | #跨服分区类型配置, 没配置的默认 CrossZoneComm
|
| | | Def_CrossZoneTypeName = {0:"CrossZoneComm", # 特殊0,默认常规分区
|
| | | Def_FBMapID_CrossPenglai:"CrossZoneComm",
|
| | |
| | | Def_FBMapID_CrossDemonKing:"CrossZonePK",
|
| | | Def_FBMapID_CrossGrasslandLing:"CrossZonePK",
|
| | | Def_FBMapID_CrossGrasslandXian:"CrossZonePK",
|
| | | Def_FBMapID_CrossBattlefield:"CrossZonePK",
|
| | | }
|
| | | #跨服分区对应地图配置表名 - 仅适用于固定地图及虚拟分线的跨服玩法
|
| | | Def_CrossZoneMapTableName = {Def_FBMapID_CrossPenglai:"CrossPenglaiZoneMap",
|
| | | Def_FBMapID_CrossDemonLand:"CrossDemonLandZoneMap",
|
| | | }
|
| | | #需要动态分配线路的跨服地图
|
| | | Def_CrossDynamicLineMap = [Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian]
|
| | | Def_CrossDynamicLineMap = [Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian, Def_FBMapID_CrossBattlefield]
|
| | |
|
| | | #副本关闭时未拾取的物品邮件发放给玩家
|
| | | #这里只有需要的副本才配置,不做默认逻辑,防止某些副本实际不能给导致刷物品,如麒麟之府
|
| | |
| | | # 副本中玩家下线就被踢出
|
| | | Def_DisconnectExit_FBID = []
|
| | | #会有阵营的地图
|
| | | Def_MapID_NeedCamp = [Def_FBMapID_FamilyWar, Def_FBMapID_GatherSoul, Def_FBMapID_CrossRealmPK]
|
| | | Def_MapID_NeedCamp = [Def_FBMapID_FamilyWar, Def_FBMapID_GatherSoul, Def_FBMapID_CrossRealmPK, Def_FBMapID_CrossBattlefield]
|
| | |
|
| | | # 进入副本需要根据请求lineID动态分配虚拟分线属性的地图
|
| | | Def_MapID_LineIDToPropertyID = [Def_FBMapID_ElderBattlefield]
|
| | |
| | | 'HorsePetBoss':[Def_FBMapID_HorsePetBoss],#骑宠BOSS
|
| | | 'FairyTreasure':[Def_FBMapID_FairyTreasure],#缥缈宝藏
|
| | | 'Love':[Def_FBMapID_Love],#情缘副本
|
| | | 'CrossBattlefield':[Def_FBMapID_CrossBattlefield], #跨服战场
|
| | | }
|
| | |
|
| | | #特殊副本ID, 由系统分配, 进入时候不验证IsMapCopyFull
|
| | |
| | |
|
| | | Def_NPC_Dict_SpeedPer = "SpeedPer" # 移动速度变更百分比
|
| | |
|
| | | Def_NPC_Dict_Faction = "Faction" # 阵营
|
| | |
|
| | | # 延迟攻击时长, 毫秒
|
| | | Def_NPC_Dict_AtkDelayTick = "AtkDelayTick" # 延迟攻击时长
|
| | | Def_NPC_Dict_AtkStartTick = "AtkStartTick" # 开始攻击tick
|
| | |
| | |
|
| | | # 每日活跃度
|
| | | Def_PDict_Activity_FinishCnt = "Activity_FinishCnt_%s" # 活跃度类型对应完成次数
|
| | | Def_PDict_Activity_AddTotal = "Activity_AddTotal_%s" # 活跃度类型对应获得活跃度总
|
| | | Def_PDict_Activity_TotalPoint = "Activity_TotalPoint" # 当前总活跃值(不可消耗)
|
| | | Def_PDict_ActivityAwardRecord = "ActivityAwardRecord" # 活跃度奖励领取记录,按二进制位标识
|
| | | Def_PDict_Activity_AwardStage = "Activity_AwardStage" # 当前活跃奖励阶段,对应不同境界段
|
| | |
| | | # 跨服幸运云购
|
| | | Def_PDict_LuckyCloudBuy_RoundID = "LuckyCloudBuy_RoundID" # 本轮标识ID
|
| | | Def_PDict_LuckyCloudBuy_BuyCount = "LuckyCloudBuy_BuyCount" # 本轮已购买份数
|
| | |
|
| | | # 跨服战场
|
| | | Def_PDict_Battlefield_EnterCountWeek = "CBF_EnterCountWeek" # 进入总次数 - 周
|
| | | Def_PDict_Battlefield_BuyOpenCountToday = "CBF_BuyOpenCountToday" # 已购买召集总次数 - 日
|
| | | Def_PDict_Battlefield_BuyOpenCountWeek = "CBF_BuyOpenCountWeek" # 已购买召集总次数 - 周
|
| | | Def_PDict_Battlefield_HighScoreToday = "CBF_HighScoreToday" # 今日最高积分
|
| | | Def_PDict_Battlefield_HighScoreTotalWeek = "CBF_HighScoreTotalWeek" # 每日最高分累加总分 - 周
|
| | |
|
| | | #自动战斗设置记录
|
| | | Def_PDict_AutoFightSetting = "AFSetting_%s_%s"
|
| | |
| | | Def_Cost_ActivityPlace, #活跃放置 50
|
| | | Def_Cost_FaQi, # 法器
|
| | | Def_Cost_Love, # 情缘
|
| | | Def_Cost_CrossBattlefield, # 跨服战场
|
| | | Def_Cost_BuyOrderInfo, # 购买充值商品
|
| | | Def_Cost_ActGodGift, # 天帝礼包活动
|
| | | Def_Cost_TongTianLing, # 通天令
|
| | | #-----------以下为暂时没用的,先不删除,如有新增消费点则放在这些之前------------
|
| | | Def_Cost_RefreshArrestTask, # 刷新悬赏任务
|
| | | Def_Cost_OffLineExp, # 兑换离线经验
|
| | |
| | | Def_Cost_Trade, # 交易
|
| | | Def_Cost_Rename, # 改名
|
| | | Def_Cost_SkillLvUp, # 技能升级
|
| | | ) = range(2000, 2000 + 64)
|
| | | ) = range(2000, 2000 + 68)
|
| | |
|
| | | Def_Cost_Reason_SonKey = "reason_name_son" # 消费点原因子类说明key
|
| | |
|
| | |
| | | Def_Cost_ActivityPlace:"ActivityPlace",
|
| | | Def_Cost_FaQi:"FaQi",
|
| | | Def_Cost_Love:"Love",
|
| | | Def_Cost_CrossBattlefield:"CrossBattlefield",
|
| | | Def_Cost_BuyOrderInfo:"BuyOrderInfo",
|
| | | Def_Cost_ActGodGift:"ActGodGift",
|
| | | Def_Cost_TongTianLing:"TongTianLing",
|
| | | }
|
| | | ## -----------------------------------------------------
|
| | |
|
| | |
| | |
|
| | | Def_Notify_WorldKey_LuckyCloudBuyInfo = "LuckyCloudBuyInfo" # 本服幸运云购最新一期信息
|
| | |
|
| | | Def_Notify_WorldKey_CrossBattlefieldCallTeamInfo = "CrossBattlefieldCallTeamInfo" # 跨服战场召集队伍信息
|
| | |
|
| | | 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
|
| | |
| | | '''
|
| | | CrossBillboardTypeList = (
|
| | | Def_CBT_ActCTG, # 跨服运营活动 - 充值榜 150
|
| | | ) = range(150, 150 + 1)
|
| | | Def_CBT_BattlefieldWJoin, # 跨服战场每周参与榜 151
|
| | | Def_CBT_BattlefieldWCall, # 跨服战场每周召集榜 152
|
| | | Def_CBT_BattlefieldWScore, # 跨服战场每周积分榜 153
|
| | | ) = range(150, 153 + 1)
|
| | |
|
| | | #职业对应战力排行榜类型
|
| | | JobFightPowerBillboardDict = {
|
| | |
| | | Def_UniversalGameRecType_20,
|
| | | Def_UniversalGameRecType_LuckyCloudBuyNum, # 幸运云购购买号码记录 21
|
| | | Def_UniversalGameRecType_LuckyCloudBuyLottery, # 幸运云购开奖记录 22
|
| | | Def_UniversalGameRecType_23,
|
| | | Def_UniversalGameRecType_CrossBattlefieldBuy, # 玩家购买的跨服战场 23
|
| | | Def_UniversalGameRecType_UpdatePlayerName, # 玩家改名正在改名中的信息24
|
| | | Def_UniversalGameRecType_BossDropGoodItemInfo, # boss掉落好物品信息记录25
|
| | | Def_UniversalGameRecType_26,
|
| | |
| | | Def_List_EscapeSequence = ['\a', '\b', '\f', '\n', '\r', '\t', '\v', '\\', '\'', '\"', '\0']
|
| | |
|
| | | #阵营 三种 中立 正义 邪恶
|
| | | [
|
| | | CampTypeList = [
|
| | | CampType_Neutral, #中立
|
| | | CampType_Justice, #正义(与 Def_ID1Win 一致)
|
| | | CampType_Evil, #邪恶(与 Def_ID2Win 一致)
|
| | |
| | | CrossServerMsg_LuckyCloudBuyNum = "LuckyCloudBuyNum" # 幸运云购购买记录通知
|
| | | CrossServerMsg_LuckyCloudBuyLottery = "LuckyCloudBuyLottery" # 幸运云购开奖记录通知
|
| | | CrossServerMsg_CrossServerTime = "CrossServerTime" # 跨服时间同步
|
| | | CrossServerMsg_BattlefieldBuy = "BattlefieldBuy" # 跨服战场购买信息
|
| | | CrossServerMsg_BattlefieldState = "BattlefieldState" # 跨服战场状态信息
|
| | | CrossServerMsg_BattlefieldOver = "BattlefieldOver" # 跨服战场结算信息
|
| | | CrossServerMsg_DebugAnswer = "DebugAnswer" # DebugAnswer
|
| | |
|
| | | # 子服发送跨服信息定义
|
| | | ClientServerMsg_ServerInitOK = "ServerInitOK" # 子服启动成功
|
| | |
| | | ClientServerMsg_EnterFB = "EnterFB" # 请求进入跨服副本
|
| | | ClientServerMsg_AddBuff = "AddBuff" # 添加BUFF
|
| | | ClientServerMsg_LuckyCloudBuy = "LuckyCloudBuy" # 幸运云购
|
| | | ClientServerMsg_BattlefieldBuyOpen = "BattlefieldBuyOpen" # 跨服战场购买召集
|
| | | ClientServerMsg_BattlefieldCallJoin = "BattlefieldCallJoin" # 跨服战场召集 - 加入
|
| | | ClientServerMsg_BattlefieldCallKick = "BattlefieldCallKick" # 跨服战场召集 - 踢出
|
| | |
|
| | | #跨服广播类型定义
|
| | | CrossNotify_CrossAct = "CrossAct"
|
| | |
| | | DailyActionID_SkyTreasureBox, # 天降宝箱 32
|
| | | DailyActionID_Arena, # 竞技场 33
|
| | | DailyActionID_CrossDemonLand, # 跨服魔化之地Boss 34
|
| | | ) = range(1, 34 + 1)
|
| | |
|
| | |
|
| | | DailyActionID_CrossBattlefield, # 跨服战场 35
|
| | | ) = range(1, 35 + 1)
|
| | |
|
| | |
|
| | | # 成就类型定义
|