Grid Pathing: hopping and grid_entries
In this thread I will attempt to extract the knowledge of you, the community, on how npcs go about their business in their grids. Specifically, what causes hopping/disappearances and how to fix it. I know this isn't new.
I figure if I can get help to fix this zone then all or most of the other zones should be quite a bit easier. Hopefully, I will understand everything that goes into it much better allowing me to pay it forward. I've searched google, this site and tested the various rule_values to get a bit of understanding before coming here. I'll try not to make general presumptions based on data specific to me; although making those presumptions begs correction from you. ;) I only tested in the worst zone. Lavastorm is the worst. Grid pathing seems fine any many other zones. I've changed plenty of grids in other zones with no issues. I know how to use the two grid tables, `grid` and `grid_entries` and the grid tool within the game. I probably won't need quite the tutorial in using this tool like I did the #path tool. Some of my notes. I use my own terminology which should be simple to follow. Quote:
I don't know why, exactly, one zone will be fine when another will be Lavastorm. I would like feedback, please. |
There are three rules that affect the frequency with which NPCs will scan for the best Z-coordinate (elevation) for their current position.
Map:FixPathingZWhenLoading set to true will determine the best Z for each spawn point, once for the zone (I think). Map:FixPathingZAtWaypoints set to true will have the server check each waypoint along a grid for the best Z-coordinate to reach it. Uses slightly more CPU power than the previous one. Map:FixPathingZWhenMoving set to true will cause NPCs to constantly check for the best Z coordinate for their current position as they traverse their grid or roaming boxes. I think it does its check each second or something. This uses the most CPU power, but computers running servers in 2015 are unlikely to see any kind of performance hit, really. It was more of an issue 10 years ago. |
Boy was it. Changing anything with pathing back then could knock the zones up to 100% CPU without even blinking.
|
I did some more testing and searching.
Quote:
Quote:
I have tested the client files by logging into P99 and going to these zones, just out of due diligence, again. I'm thinking I need different .map files. I reverted the .map (linker address map) files for lavastorm and nektulos from the `EQEmuServer` I saved prior to updating on 7/29/15. The hopping issue all but went away. Much improved at first glance. Still could be better. I'm not sure what happened during the update or if the newer files are for different zone versions. I'm disappointed noone suggested this very simple fix. This has been an issue for years and it is "common knowledge" that it exists. On the other hand, I am pleased this was simple and greatly improved grid pathing. If other similar issues are found I could try the same fix. I would still like to know how to go about creating the files which had such varying effects on npc behavior. Good day. |
I have the FixPathingZWhenMoving check turned on in my server as well. One note is there were some zones such as skyfire we had to rebuild the .map file because mobs were warping up in the air if you are using the public .map lists.
These are my server settings for Map/Pathing(if it isn't here its default): Map:FixPathingZWhenMoving set to true Map:FixPathingZAtWaypoints set to true Map:FixPathingZMaxDeltaMoving = 30 Map:FixPathingZMaxDeltaWaypoint = 30 Map:FixPathingZMaxDeltaSendTo = 30 Map:FixPathingZMaxDeltaLoading = 55 Pathing: Pathing:MinNodesTraversedForLOSCheck = 5 Pathing:CandidateNodeRangeXY = 50 Also increased these so people can't use levitate and other stuff in zones like mistmoore to make mobs run back and forth. Pathing:CandidateNodeRangeZ = 25 |
Thanks image, I may have to try your settings on my server to see the difference. This does help with people exploiting pathing nodes?
|
Thanks! I'll give it a shot as well.
|
Quote:
|
Quote:
The NodeXY value I reduced and the min nodes increased because I wanted to make sure the NPC's kept "pathing" until they truly saw the target in Line of Sight. With the default settings I find NPC's like to come directly at you as soon as they see Line of Sight so they would cut corners rather specifically once the LoS check was met. Yea for skyfire doing #path shownodes locks up the zone pretty good for me, there are a ton of nodes. That zone is kind of necessary though -- I agree open zones I typically wouldn't add pathing points, but there are so many rocky formations that shoot up way high and the NPC's don't know any better so without the pathing they would just go right through them. |
All times are GMT -4. The time now is 01:01 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.