EOSERV Bug Tracker > Bug #254: PLAYER:NPC Packet Behavior

Bug #254: PLAYER:NPC Packet Behavior

PLAYER:NPC Packet Behavior
ID #254
Submitter Plasmastar
Product EOSERV
Severity Normal
Status OPEN, NEW
Submitted 9th May 2013
Updated 9th May 2013
Plasmastar Submitter 11 years, 1 week ago

builder.AddChar(this->index);

builder.AddChar(1 + (target->hp == 0));

builder.AddChar(this->direction);

builder.AddShort(target->player->id);

builder.AddThree(amount);

builder.AddThree(util::clamp<int>(double(target->hp) / double(target->maxhp) * 100.0, 0, 100));

Here, we have something that doesn't match what EOMain is sending. The last 3 bytes is actually received as 1 byte from EOMain.

I have evidenced that this packet also contains multiple NPC actions, from multiple NPCs, in a single packet. So I don't doubt that this one would have been confusing in the past. This is also the reason the message part of the packet requires a length byte. I hope this helps! :)

Comments

Plasmastar Submitter 11 years, 1 week ago

To add on to this. EOMain also seems to send NPC actions of dead NPCs. I think this is a bug, but it invokes the client to ask for refresh data of that NPC. This is why the client mysteriously and "randomly" sends those things. Too bad Vult doesn't read these bugs. :(

Add Comment

Please don't post unless you have something relevant to the bug to say.
Do not comment to say "thanks" or "fix this please".

Please log in to add comments. EOSERV Bug Tracker > Bug #254: PLAYER:NPC Packet Behavior