Neo-Mind / NEMO

Neo Exe Modification Organizer
107 stars 120 forks source link

Clear Username Buffer on Cancel-to-login-window #138

Open cydh opened 8 years ago

cydh commented 8 years ago

Idk if this is fixed yet. xD just when the patch for 'cancel to login window', we got player always fail to login other account, because the username buffer wasn't cleared.

On official client, something like this happen, but if the new username's length less than recent username, the buffer will be [username in hex] 00. The last null makes something like "this real username only before the null byte" in Aegis server.

Example the first one is 12-bytes:

63 63 63 63  63 63 63 63  63 63 63 63  00 00 00 00  00 00 00 00  00 00 00 00

and player presses the cancel, and type new username that only has 4-bytes, the one next byte will be null

65 65 65 65  00 63 63 63  63 63 63 63  00 00 00 00  00 00 00 00  00 00 00 00

Iirc, in emu, it simply makes username a whole username bytes (like for 01DD is 24-Bytes), and only trim the trailing bytes.

and if this cannot be done by patching the client, then emu must handle this one. xD

HeroGarr commented 8 years ago

Hmm, seems like something I reported in #124, but what neo couldn't reproduce.

cydh commented 8 years ago

oh well, then must be on emu's side for the fixes. :D