View Single Post
  #13  
Old 12-21-2010, 02:46 PM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

Quote:
Originally Posted by provocating View Post
But if you also spent time on the other side of the zone would you not also have good pathing, does it somehow overwrite the other ? Not sure how it is coded.
Say you are near mob A, which is walking a square route, say around the outside of a building. While you are near it, you get good pathing data.

Now if you move to mob B on the other side of the zone, the server is still sending you movement data for mob A, just not as frequently. What will likely happen now is you get a movement update for mob A when it is on one side of the building (let's call that grid_entry n), and the in the next update (n + 1) it may have turned the corner and moved some distance.

When the SQL is sourced in and you enter the zone in EQEmu, when the mob gets to waypoint n and sets of toward waypoint n+1, it will walk through the walls of our hypothetical building, because the chances of us getting a movement update in the capture at the precise time it was at the corner of the building and making a 90 degree turn are not very high.

Again, this can be fixed by manually editing the database later, by deleting the grid_entries other than the ones that were captured when you were nearby the mob and got frequent movement updates, which would have included direction changes.

Manual editing will also be required if you are in the zone for a long time. If you are in a zone for hours, you will have captured the mob making many circuits of its patrol route, so any waypoints beyond that required to complete one circuit are redundant and should be deleted.
Reply With Quote