hello gus i have 1 proplem in my source 5366 patch i got stucked in intilizing
what i miss?
what i miss?
Quote:
public static implicit operator byte[](CharacterInfoPacket info)
{
byte name_len = (byte)info.Client.Entity.Name.Length;
byte[] Buffer = new byte[109 + 8 + name_len + info.Client.Spouse.Length];
fixed (byte* Packet = Buffer)
{
*((ushort*)(Packet)) = (ushort)(Buffer.Length - 8);
*((ushort*)(Packet + 2)) = 0x3EE;
*((uint*)(Packet + 4)) = info.Client.Entity.UID;
*((uint*)(Packet + 8)) = info.Client.Entity.Spawn.Model;
*((ushort*)(Packet + 12)) = info.Client.Entity.Spawn.Hairstyle;
*((int*)(Packet + 14)) = info.Client.Money;
*((int*)(Packet + 18)) = info.Client.ConquerPoints;
*((uint*)(Packet + 22)) = info.Client.Experience;
*((uint*)(Packet + 42)) = info.Client.Unknown;
*((StatData*)(Packet + 50)) = info.Client.Stats;
*((ushort*)(Packet + 52)) = (ushort)info.Client.Dexterity;
*((ushort*)(Packet + 54)) = (ushort)info.Client.Vitality;
*((ushort*)(Packet + 56)) = (ushort)info.Client.Spirit;
*((ushort*)(Packet + 58)) = (ushort)info.Client.StatPoints;
*((ushort*)(Packet + 60)) = (ushort)info.Client.Entity.Hitpoints;
*((ushort*)(Packet + 62)) = (ushort)info.Client.Manapoints;
*((ushort*)(Packet + 64)) = info.Client.PKPoints;
Packet[66] = (byte)info.Client.Entity.Spawn.Level;//
Packet[67] = info.Client.Job;//
Packet[69] = (byte)info.Client.Entity.Spawn.Reborn;//
*((uint*)(Packet + 71)) = info.Client.QuizPoints;
*((uint*)(Packet + 75)) = info.Client.Enlighten;
*((ushort*)(Packet + 79)) = (ushort)info.Client.Unknown2;
*((uint*)(Packet + 81)) = info.Client.Unknown;
Packet[87] = 0x02;
Packet[88] = name_len;
Packet[89 + name_len] = (byte)info.Client.Spouse.Length;
info.Client.Entity.Name.CopyTo(Packet + 89);
info.Client.Spouse.CopyTo(Packet + 109 + name_len);
PacketBuilder.AppendTQServer(Packet, Buffer.Length);
}
return Buffer;
}
Offset Type Value 0 ushort 109 + TotalStringLength 2 ushort 1006 4 uint Character_ID 8 uint Character_Model 12 ushort Character_HairStyle 14 uint Character_Gold 18 uint Character_CPoints 22 ulong Character_Experience 42 uint Unknown 50 ushort Character_Strength 52 ushort Character_Dexterity 54 ushort Character_Vitality 56 ushort Character_Spirit 58 ushort Character_StatPoints 60 ushort Character_HP 62 ushort Character_MP 64 ushort Character_PKPoints 66 byte Character_Level 67 byte Character_Class 69 byte Character_Reborn 70 bool Character_Name_Display 71 uint Character_QuizPoints 75 uint Character_Enlighten 79 ushort Unknown 81 uint Unknown 106 byte String_Count 107 byte First_Name_Length 108 string First_Name 109 + Pos byte Second_Name_Length 110 + Pos string Second_Name 111 + Pos byte Spouse_Name_Length 112 + Pos string Spouse_Name
#reportedQuote:
You are an idiot.
using System;
namespace Conquer_Online_Server.Network.GamePackets
{
public class CharacterInfo : Writer, Interfaces.IPacket
{
Client.GameState client;
public CharacterInfo(Client.GameState _client)
{
client=_client;
}
public void Deserialize(byte[] buffer)
{
throw new NotImplementedException();
}
public byte[] ToArray()
{
byte[] Packet = new byte[98 + client.Entity.Spouse.Length + client.Entity.Name.Length];
WriteUInt16((ushort)(Packet.Length - 8), 0, Packet);
WriteUInt16(0x3ee, 2, Packet);
WriteUInt32(client.Entity.UID, 4, Packet);
WriteUInt32(client.Entity.Mesh, 8, Packet);
WriteUInt16(client.Entity.HairStyle, 12, Packet);
WriteUInt32(client.Entity.Money, 14, Packet);
WriteUInt32(client.Entity.ConquerPoints, 18, Packet);
WriteUInt64(client.Entity.Experience, 22, Packet);
WriteUInt16(client.Entity.Strength, 50, Packet);
WriteUInt16(client.Entity.Agility, 52, Packet);
WriteUInt16(client.Entity.Vitality, 54, Packet);
WriteUInt16(client.Entity.Spirit, 56, Packet);
WriteUInt16(client.Entity.Atributes, 58, Packet);
WriteUInt16((ushort)client.Entity.Hitpoints, 60, Packet);
WriteUInt16(client.Entity.Mana, 62, Packet);
WriteUInt16(client.Entity.PKPoints, 64, Packet);
Packet[66] = client.Entity.Level;
Packet[67] = client.Entity.Class;
Packet[69] = client.Entity.Reborn;
Packet[70] = 1;
WriteUInt32(client.Entity.QuizPoints, 71, Packet);
Packet[87] = 2;
WriteStringWithLength(client.Entity.Name, 88, Packet);
WriteStringWithLength(client.Entity.Spouse, 89 + Packet[88], Packet);
return Packet;
}
public void Send(Client.GameState client)
{
client.Send(ToArray());
}
}
}
Quote:
this is mine is it good or need to upgrade
PHP Code:using System;
namespace Conquer_Online_Server.Network.GamePackets
{
public class CharacterInfo : Writer, Interfaces.IPacket
{
Client.GameState client;
public CharacterInfo(Client.GameState _client)
{
client=_client;
}
public void Deserialize(byte[] buffer)
{
throw new NotImplementedException();
}
public byte[] ToArray()
{
byte[] Packet = new byte[98 + client.Entity.Spouse.Length + client.Entity.Name.Length];
WriteUInt16((ushort)(Packet.Length - 8), 0, Packet);
WriteUInt16(0x3ee, 2, Packet);
WriteUInt32(client.Entity.UID, 4, Packet);
WriteUInt32(client.Entity.Mesh, 8, Packet);
WriteUInt16(client.Entity.HairStyle, 12, Packet);
WriteUInt32(client.Entity.Money, 14, Packet);
WriteUInt32(client.Entity.ConquerPoints, 18, Packet);
WriteUInt64(client.Entity.Experience, 22, Packet);
WriteUInt16(client.Entity.Strength, 50, Packet);
WriteUInt16(client.Entity.Agility, 52, Packet);
WriteUInt16(client.Entity.Vitality, 54, Packet);
WriteUInt16(client.Entity.Spirit, 56, Packet);
WriteUInt16(client.Entity.Atributes, 58, Packet);
WriteUInt16((ushort)client.Entity.Hitpoints, 60, Packet);
WriteUInt16(client.Entity.Mana, 62, Packet);
WriteUInt16(client.Entity.PKPoints, 64, Packet);
Packet[66] = client.Entity.Level;
Packet[67] = client.Entity.Class;
Packet[69] = client.Entity.Reborn;
Packet[70] = 1;
WriteUInt32(client.Entity.QuizPoints, 71, Packet);
Packet[87] = 2;
WriteStringWithLength(client.Entity.Name, 88, Packet);
WriteStringWithLength(client.Entity.Spouse, 89 + Packet[88], Packet);
return Packet;
}
public void Send(Client.GameState client)
{
client.Send(ToArray());
}
}
}