Bonjour tout le monde,
Je commence peu à peu à améliorer mon bot MITM, j'avais décidé de faire le déplacement ma priorité, c'est ce que j'ai fais seulement, j'aimerais maintenant récupérer les informations du personnage connecté, je décide de traduire le paquet 153, avec ses dérivés évidemment. Et là au moment du deserialise il bloque au moment de lire Reader.readvaruhint. Je ne pense pas que ce soit au niveau de la traduction mais on ne sait jamais. Donc je fais un petit schémas de la lecture de du paquet. CharacterSelectedSuccessMessage -> CharacterBaseInformations -> CharacterMinimalPlusLookInformations -> CharacterMinimalInformations -> AbstractCharacterInformation (variable id à lire)
Donc dans le paquet 400 il y a une variable id
Public Sub Deserialize(Reader As Dofus.IO.BigEndianReader)
Me.id = Reader.ReadVarUhInt
If (Me.id < 0) Then
Throw New Exception("Forbidden value (" + Me.id + ") on element of AbstractCharacterInformation.id.")
End If
End Sub
End Class
Avec tout les inherits c'est la première variable que je lis,
Mes ios :
Public Function ReadVarInt() As Integer
Dim local_4 = 0
Dim local_1 = 0
Dim local_2 = 0
Dim local_3 = False
While local_2 < INT_SIZE
local_4 = ReadUnsignedByte()
local_3 = (local_4 And MASK_1) = MASK_1
If local_2 > 0 Then
local_1 += ((local_4 And MASK_0) << local_2)
Else
local_1 += (local_4 And MASK_0)
End If
local_2 += CHUNCK_BIT_SIZE
If Not local_3 Then
Return local_1
End If
End While
Throw New System.Exception("Too much data")
End Function
Public Function ReadVarUhInt() As UInteger
Return CUInt(ReadVarInt())
End Function
J'arrive à l’erreur Throw New System.Exception("Too much data") pourtant mes Ios me semblent à Jour et ce n'est pas possible que mon erreur vienne d'une erreur de lecture qui fait que je décale tout puisque la variable id est la première que je lis. Je suis un peu perdu si vous avez une piste, ça m'aiderait. Merci !