Windcatcher
01-13-2008, 05:27 PM
I realize mine is an old server, but I don't know how far up the chain this goes, and it affects SimpleClient. In EQEmu 0.5.5 mob.cpp, Mob::SendPosition() should set delta_x, delta_y, and delta_z to zero. The problem is that, after a mob that is attacking you stops, if you move just a little bit to make it call FaceTarget(), an update gets sent out with the new heading, but this update also sends velocity information. If they were never zeroed out from the last stop, then the velocity data from the last time the mob moved (presumably at the player) will make it move again, even though it should not. So adding this to SendPosition() (which stops the mob) will fix the problem:
delta_x = 0;
delta_y = 0;
delta_z = 0;
I don't know how many servers it affects, but I recommend checking it out.
delta_x = 0;
delta_y = 0;
delta_z = 0;
I don't know how many servers it affects, but I recommend checking it out.