Bonjour à tous, j'ai décider de me tourner vers vous car j'ai un soucis sur la réception du AuthenticationTicketMessage car mon ticket reste vide ce qui me deco automatiquement. Je suis en train de faire un bot en MITM, c'est mes débuts dans le monde du dev de bot, et je laisse le ticket passer tel quel, donc j'ai décider de vérifier ma classe du SelectedServerDataMessage mais je ne vois pas ce qui pourrais clocher dans le serialize et deserialize de ce packet comme le ticket ce génère par lui.
Code
Cliquez pour révéler
Cliquez pour masquer
public override void Serialize(IDataWriter writer)
{
if (this.ServerId < 0)
{
throw new Exception("Forbidden value (" + this.ServerId + ") on element serverId.");
}
writer.WriteVarShort(this.ServerId);
writer.WriteUTF(this.Address);
if (this.Port < 0 || this.Port > 65535)
{
throw new Exception("Forbidden value (" + this.Port + ") on element port.");
}
writer.WriteShort((short)this.Port);
writer.WriteBoolean(this.CanCreateNewCharacter);
writer.WriteVarInt(this.Ticket.Length);
uint _loc2_ = 0;
while (_loc2_ < this.Ticket.Length)
{
writer.WriteSByte(this.Ticket[_loc2_]);
_loc2_++;
}
}
public override void Deserialize(IDataReader reader)
{
this.ServerId = (ushort)reader.ReadVarShort();
bool flag = this.ServerId < 0;
if (flag)
{
throw new Exception("Forbidden value on ServerId = " + this.ServerId + ", it doesn't respect the following condition : serverId < 0");
}
this.Address = reader.ReadUTF();
this.Port = reader.ReadUShort();
bool flag2 = this.Port < 0 || this.Port > 65535;
if (flag2)
{
throw new Exception("Forbidden value on Port = " + this.Port + ", it doesn't respect the following condition : port < 0 || port > 65535");
}
this.CanCreateNewCharacter = reader.ReadBoolean();
int num = reader.ReadVarInt();
this.Ticket = new sbyte[num];
for (int i = 0; i < num; i++)
{
this.Ticket = reader.ReadSByte();
}
}
Merci d'avance pour la moindre aide.
PS : Je sais que c'est mon premier poste et que pour certain ça doit mal passer de demander de l'aide.