From d66c0ac334ac3570334708ac4dae51e30b0798d2 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 31 七月 2024 15:48:11 +0800 Subject: [PATCH] 9701 【越南】【香港】【主干】【砍树】跨服竞技64位排位赛(修复排位超过10个分区时仙官分区数据异常bug) --- ServerPython/CoreServerGroup/GameServer/Script/EventReport.py | 23 ++++++++++++++++++----- 1 files changed, 18 insertions(+), 5 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py b/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py index f4f13c5..2dbb565 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py @@ -38,6 +38,8 @@ import md5 import os import re +import urllib +import IpyGameDataPY EventFilepath = "D:\\EventServer\\PythonScribe\\EventLog\\" @@ -87,7 +89,15 @@ def EventReport(eventActionID, eventParam, curPlayer=None, OperatorID=""): # 组成例子 eventParam 的格式必须是 xx=yy&zz=cc # "http://192.168.0.249:12000/event_receiver?EventID=3099&OperatorID=test&PlayerCount=102&Time=2018-02-08 18:30:30&ProductID=snxxz&RegionName=s1" - + + reportActionIDList = IpyGameDataPY.GetFuncEvalCfg("EventReport", 3) + if reportActionIDList and eventActionID not in reportActionIDList: + #GameWorld.DebugLog("非需要汇报的事件ID! %s" % eventActionID) + return + if eventActionID in IpyGameDataPY.GetFuncEvalCfg("EventReport", 1): + #GameWorld.DebugLog("不需要汇报的事件! %s" % eventActionID) + return + if not curPlayer and not OperatorID: return @@ -96,8 +106,8 @@ playerInfo = "" if curPlayer: - playerInfo = "&AccountID=%s&IP=%s"%(GameWorld.GetPlatformAccID(curPlayer.GetAccID()), - curPlayer.GetIP()) + playerInfo = "&AccountID=%s&IP=%s&DeviceFlag=%s"%(GameWorld.GetPlatformAccID(curPlayer.GetAccID()), + curPlayer.GetIP(), curPlayer.GetDeviceFlag()) #======================================================================= # #UTF8 需要转成url编码才可用 # playerInfo = urllib.urlencode({"RoleID": curPlayer.GetName(), @@ -116,9 +126,12 @@ return RegionName = 's%s'%sid - getUrl = "%s?ProductID=%s&OperatorID=%s&RegionName=%s&EventID=%s%s&Time=%s&%s"%(\ + if eventParam: + eventParam = "&%s"%eventParam + + getUrl = "%s?ProductID=%s&OperatorID=%s&RegionName=%s&EventID=%s%s&Time=%s%s"%(\ ReportUrl, ProductID, OperatorID, RegionName, eventActionID, playerInfo, - str(datetime.datetime.today()).split('.')[0], eventParam) + urllib.quote(str(datetime.datetime.today()).split('.')[0]), eventParam) GameWorld.DebugLog("EventReport: %s"%getUrl) # 第五个参数0代表get发送 1代表post -- Gitblit v1.8.0