Maps/*.path files
I'm not sure which forum these questions should be in. After searching these forums for days on end I've only been able to find 21 {zonename}.path files. This seems like a pretty important part of the experience. Are there more of these files somewhere? If not, is there a movement going to get these files created? If so where would I find that information? Like if I path out a zone using the built in commands, where would I submit the file to?
Thanks! |
So I'm getting close to finishing the pathing for hate plane (original) and I'd like to share it with the community but need to know how! Thing is frigin huge though, like 1750 nodes, taken forever.
|
If you want to email it to me (DerisionEQ at gmail.com), or upload it to one of the various file sharing sites (rapidshare, megaupload etc) and email me the download link
when you are done, I can commit it to the Maps SVN repo http://code.google.com/p/eqemumaps/ If it looks good and you plan on doing more .path files, I can give you commit access and you can commit your own after that if you want, and are comfortable using SVN :) |
Ok, will do. Ya, I am comfortable with SVN as I code for a living.
Follow-up question about pathing... Do you know how pathing works if a mob can't find a path to the character they aggro on? Do they path to the nearest node to the character and then take a direct path from that node or do they not use any pathing and just b-line to the character? The reason I ask is that I wasn't planning on putting pathing on the outer wall in hate. I was hoping the mobs would path to the nearest node at the base of the wall and then take a direct line to you but I haven't tested it yet. If I have to place nodes on the wall the mobs are either going to path weird on the wall or there will have to be hundreds of nodes on the wall. |
The pathfinding algorithm works like this, from initial aggro:
Code:
If the mob has Line-Of-Sight to the player, and there are no large vertical drops in between them, the mob runs directly toward if the player moves by a certain amount. Also, as it's following it's route, the mob will periodically check if it now has LoS to the player, in which case it will discard it's route and just make a bee-line toward the player. In the event that there is no route between the mob and the player that can be determined as I have described above, then the mob will just run directly toward the player, regardless of whether there are walls or other obstacles in the way. As long as any place on the Hate plane wall has LoS to a path node on the ground, then you shouldn't need to put any nodes on the wall itself. The key thing in placing path nodes is to ensure that everywhere in the zone has LoS to a node, but not to put too many redundant nodes. e.g. if you have a long straight corridor with no alcoves or rooms branching of it, you only need one node at each end. If you have a square room, you really only need one node outside the door to the room and one just inside, that will have LoS to any location inside the room. |
Awesome, thanks for the info! Turns out I way over did the nodes!
Is there a way to delete nodes? I haven't found a way with the ingame commands. I meant to try using depop and seeing if that did it but my guess is it will just remove the representation of the node and not the node itself. Perhaps I will just need to start over but it's going to suck to throw away like 10 hours of work. :P |
Looking at the source code, there is a '#path remove' command (which is not listed by #path help) which appears to remove the targetted node.
EDIT: Looking back at some previous posts, it appears you may have to use '#path resort' after deleting a node. I'm not quite sure, as KLS added those in-game commands and I've not created any .path files since the in-game path creation commands were implemented. |
Also, I was noding rooms with columns to try and make it so mobs could path every possible way through the room, is that not necessary? For example a room that looks like the following:
X = column O = node Code:
__________________________________________ |
Quote:
|
Quote:
Code:
__________________________________________ which would be shorter and look more intelligent, so yes, your placement is probably the best in that scenario :) |
Just kinda talking to myself now...
Thinking a little more about how it works, it seems that in the perfect world in order for mobs to always take the shortest route possible you would want a node at every external corner. What I mean by external is that if you are at a corner and you are on the side with > 180 degrees, you need a node. This would allow mobs to path from one corner to the next perfectly. The amount of connections would be pretty ridiculous though. I'm assuming that at some point you would hurt performance or the algorithm for finding best path would fail or something. But take the following two rooms for example: Code:
O O Code:
__________________________________________ |
Yeah you most likely have to resort after deletes to avoid crashes in game.
|
So everything was going good... I have all of the buildings on the first floor pathed out and working and then I stumbled onto this humdinger in the second building I was pathing out on the second floor. I can't figure out why this is happening... Bug with the pathing code maybe? I don't know and I don't know how to fix it.
http://brewhaus.servegame.org/images/pathing.gif I have checked multiple times to make sure the nodes are connected and they are. |
Well, I disconnected and reconnected all the nodes in the building and it seems to be working now. That was strange.
|
All times are GMT -4. The time now is 04:49 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.