From 7b9354771ba6087012ca989f02d7bca345ed1764 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期三, 26 十二月 2018 12:02:00 +0800 Subject: [PATCH] 860312 脱机工具封包补齐 --- Tool/Robot/Protocol/PacketsReceived.py | 174 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 164 insertions(+), 10 deletions(-) diff --git a/Tool/Robot/Protocol/PacketsReceived.py b/Tool/Robot/Protocol/PacketsReceived.py index fe93a7f..d1edd16 100644 --- a/Tool/Robot/Protocol/PacketsReceived.py +++ b/Tool/Robot/Protocol/PacketsReceived.py @@ -983,7 +983,7 @@ LV = 0 #(WORD LV)//等级 LVEx = 0 #(WORD LVEx)//玩家等级副本,用于转生 LV2 = 0 #(WORD LV2)//大师等级 - ExpPoint = 0 #(WORD ExpPoint)//扩充经验点数 + ExpPoint = 0 #(DWORD ExpPoint)//扩充经验点数 TotalExp = 0 #(DWORD TotalExp)//总经验 Family = 0 #(DWORD Family)//家族 FamilyName = "" #(char FamilyName[33])//家族名称 @@ -1062,6 +1062,12 @@ OperateInfo = 0 #(DWORD OperateInfo)//玩家附加运营商信息 Operate = "" #(char Operate[15])//所属运营商平台名 ServerID = 0 #(DWORD ServerID)//所属区服ID + ExAttr15 = 0 #(DWORD ExAttr15)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr16 = 0 #(DWORD ExAttr16)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr17 = 0 #(DWORD ExAttr17)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr18 = 0 #(DWORD ExAttr18)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr19 = 0 #(DWORD ExAttr19)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr20 = 0 #(DWORD ExAttr20)//预留的扩展属性字段,用来存放项目特定的属性 data = None def __init__(self): @@ -1084,7 +1090,7 @@ self.LV,_pos = CommFunc.ReadWORD(_lpData, _pos) self.LVEx,_pos = CommFunc.ReadWORD(_lpData, _pos) self.LV2,_pos = CommFunc.ReadWORD(_lpData, _pos) - self.ExpPoint,_pos = CommFunc.ReadWORD(_lpData, _pos) + self.ExpPoint,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.TotalExp,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.Family,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.FamilyName,_pos = CommFunc.ReadString(_lpData, _pos,33) @@ -1163,6 +1169,12 @@ self.OperateInfo,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.Operate,_pos = CommFunc.ReadString(_lpData, _pos,15) self.ServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr15,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr16,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr17,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr18,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr19,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr20,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -1260,6 +1272,12 @@ self.OperateInfo = 0 self.Operate = "" self.ServerID = 0 + self.ExAttr15 = 0 + self.ExAttr16 = 0 + self.ExAttr17 = 0 + self.ExAttr18 = 0 + self.ExAttr19 = 0 + self.ExAttr20 = 0 return def GetLength(self): @@ -1276,7 +1294,7 @@ length += 2 length += 2 length += 2 - length += 2 + length += 4 length += 4 length += 4 length += 33 @@ -1355,6 +1373,12 @@ length += 4 length += 15 length += 4 + length += 4 + length += 4 + length += 4 + length += 4 + length += 4 + length += 4 return length @@ -1372,7 +1396,7 @@ data = CommFunc.WriteWORD(data, self.LV) data = CommFunc.WriteWORD(data, self.LVEx) data = CommFunc.WriteWORD(data, self.LV2) - data = CommFunc.WriteWORD(data, self.ExpPoint) + data = CommFunc.WriteDWORD(data, self.ExpPoint) data = CommFunc.WriteDWORD(data, self.TotalExp) data = CommFunc.WriteDWORD(data, self.Family) data = CommFunc.WriteString(data, 33, self.FamilyName) @@ -1451,6 +1475,12 @@ data = CommFunc.WriteDWORD(data, self.OperateInfo) data = CommFunc.WriteString(data, 15, self.Operate) data = CommFunc.WriteDWORD(data, self.ServerID) + data = CommFunc.WriteDWORD(data, self.ExAttr15) + data = CommFunc.WriteDWORD(data, self.ExAttr16) + data = CommFunc.WriteDWORD(data, self.ExAttr17) + data = CommFunc.WriteDWORD(data, self.ExAttr18) + data = CommFunc.WriteDWORD(data, self.ExAttr19) + data = CommFunc.WriteDWORD(data, self.ExAttr20) return data def OutputString(self): @@ -1545,7 +1575,13 @@ ExAttr14:%d, OperateInfo:%d, Operate:%s, - ServerID:%d + ServerID:%d, + ExAttr15:%d, + ExAttr16:%d, + ExAttr17:%d, + ExAttr18:%d, + ExAttr19:%d, + ExAttr20:%d '''\ %( self.Head.OutputString(), @@ -1638,7 +1674,13 @@ self.ExAttr14, self.OperateInfo, self.Operate, - self.ServerID + self.ServerID, + self.ExAttr15, + self.ExAttr16, + self.ExAttr17, + self.ExAttr18, + self.ExAttr19, + self.ExAttr20 ) return DumpString @@ -7095,6 +7137,16 @@ EquipCount = 0 #(BYTE EquipCount) EquipInfo = list() #(vector<tagLoginInfoEquip> EquipInfo)//size = EquipCount EquipShowSwitch = 0 #(DWORD EquipShowSwitch)//玩家装备显示开关 + ExAttr15 = 0 #(DWORD ExAttr15)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr16 = 0 #(DWORD ExAttr16)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr17 = 0 #(DWORD ExAttr17)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr18 = 0 #(DWORD ExAttr18)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr19 = 0 #(DWORD ExAttr19)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr20 = 0 #(DWORD ExAttr20)//预留的扩展属性字段,用来存放项目特定的属性 + IPLen = 0 #(BYTE IPLen) + IP = "" #(String IP)// 跨服IP + Port = 0 #(WORD Port)// 跨服端口 + CrossState = 0 #(BYTE CrossState)// 跨服状态0-非跨服状态,1-跨服状态,2-跨服状态异常 data = None def __init__(self): @@ -7118,6 +7170,16 @@ _pos = temEquipInfo.ReadData(_lpData, _pos) self.EquipInfo.append(temEquipInfo) self.EquipShowSwitch,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr15,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr16,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr17,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr18,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr19,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr20,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.IPLen,_pos = CommFunc.ReadBYTE(_lpData, _pos) + self.IP,_pos = CommFunc.ReadString(_lpData, _pos,self.IPLen) + self.Port,_pos = CommFunc.ReadWORD(_lpData, _pos) + self.CrossState,_pos = CommFunc.ReadBYTE(_lpData, _pos) return _pos def Clear(self): @@ -7134,6 +7196,16 @@ self.EquipCount = 0 self.EquipInfo = list() self.EquipShowSwitch = 0 + self.ExAttr15 = 0 + self.ExAttr16 = 0 + self.ExAttr17 = 0 + self.ExAttr18 = 0 + self.ExAttr19 = 0 + self.ExAttr20 = 0 + self.IPLen = 0 + self.IP = "" + self.Port = 0 + self.CrossState = 0 return def GetLength(self): @@ -7149,6 +7221,16 @@ for i in range(self.EquipCount): length += self.EquipInfo[i].GetLength() length += 4 + length += 4 + length += 4 + length += 4 + length += 4 + length += 4 + length += 4 + length += 1 + length += len(self.IP) + length += 2 + length += 1 return length @@ -7165,6 +7247,16 @@ for i in range(self.EquipCount): data = CommFunc.WriteString(data, self.EquipInfo[i].GetLength(), self.EquipInfo[i].GetBuffer()) data = CommFunc.WriteDWORD(data, self.EquipShowSwitch) + data = CommFunc.WriteDWORD(data, self.ExAttr15) + data = CommFunc.WriteDWORD(data, self.ExAttr16) + data = CommFunc.WriteDWORD(data, self.ExAttr17) + data = CommFunc.WriteDWORD(data, self.ExAttr18) + data = CommFunc.WriteDWORD(data, self.ExAttr19) + data = CommFunc.WriteDWORD(data, self.ExAttr20) + data = CommFunc.WriteBYTE(data, self.IPLen) + data = CommFunc.WriteString(data, self.IPLen, self.IP) + data = CommFunc.WriteWORD(data, self.Port) + data = CommFunc.WriteBYTE(data, self.CrossState) return data def OutputString(self): @@ -7178,7 +7270,17 @@ HavePswLV2:%d, EquipCount:%d, EquipInfo:%s, - EquipShowSwitch:%d + EquipShowSwitch:%d, + ExAttr15:%d, + ExAttr16:%d, + ExAttr17:%d, + ExAttr18:%d, + ExAttr19:%d, + ExAttr20:%d, + IPLen:%d, + IP:%s, + Port:%d, + CrossState:%d '''\ %( self.Head.OutputString(), @@ -7190,7 +7292,17 @@ self.HavePswLV2, self.EquipCount, "...", - self.EquipShowSwitch + self.EquipShowSwitch, + self.ExAttr15, + self.ExAttr16, + self.ExAttr17, + self.ExAttr18, + self.ExAttr19, + self.ExAttr20, + self.IPLen, + self.IP, + self.Port, + self.CrossState ) return DumpString @@ -8639,6 +8751,12 @@ ExAttr5 = 0 #(DWORD ExAttr5)//预留的扩展属性字段,用来存放项目特定的属性 ServerID = 0 #(DWORD ServerID)//所属区服ID State = 0 #(BYTE State)// 0.正常在线1.脱机挂在线 2脱机挂死亡 + ExAttr15 = 0 #(DWORD ExAttr15)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr16 = 0 #(DWORD ExAttr16)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr17 = 0 #(DWORD ExAttr17)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr18 = 0 #(DWORD ExAttr18)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr19 = 0 #(DWORD ExAttr19)//预留的扩展属性字段,用来存放项目特定的属性 + ExAttr20 = 0 #(DWORD ExAttr20)//预留的扩展属性字段,用来存放项目特定的属性 data = None def __init__(self): @@ -8696,6 +8814,12 @@ self.ExAttr5,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.ServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.State,_pos = CommFunc.ReadBYTE(_lpData, _pos) + self.ExAttr15,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr16,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr17,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr18,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr19,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.ExAttr20,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -8743,6 +8867,12 @@ self.ExAttr5 = 0 self.ServerID = 0 self.State = 0 + self.ExAttr15 = 0 + self.ExAttr16 = 0 + self.ExAttr17 = 0 + self.ExAttr18 = 0 + self.ExAttr19 = 0 + self.ExAttr20 = 0 return def GetLength(self): @@ -8790,6 +8920,12 @@ length += 4 length += 4 length += 1 + length += 4 + length += 4 + length += 4 + length += 4 + length += 4 + length += 4 return length @@ -8838,6 +8974,12 @@ data = CommFunc.WriteDWORD(data, self.ExAttr5) data = CommFunc.WriteDWORD(data, self.ServerID) data = CommFunc.WriteBYTE(data, self.State) + data = CommFunc.WriteDWORD(data, self.ExAttr15) + data = CommFunc.WriteDWORD(data, self.ExAttr16) + data = CommFunc.WriteDWORD(data, self.ExAttr17) + data = CommFunc.WriteDWORD(data, self.ExAttr18) + data = CommFunc.WriteDWORD(data, self.ExAttr19) + data = CommFunc.WriteDWORD(data, self.ExAttr20) return data def OutputString(self): @@ -8882,7 +9024,13 @@ ExAttr4:%d, ExAttr5:%d, ServerID:%d, - State:%d + State:%d, + ExAttr15:%d, + ExAttr16:%d, + ExAttr17:%d, + ExAttr18:%d, + ExAttr19:%d, + ExAttr20:%d '''\ %( self.Head.OutputString(), @@ -8925,7 +9073,13 @@ self.ExAttr4, self.ExAttr5, self.ServerID, - self.State + self.State, + self.ExAttr15, + self.ExAttr16, + self.ExAttr17, + self.ExAttr18, + self.ExAttr19, + self.ExAttr20 ) return DumpString -- Gitblit v1.8.0