The Pathing Refactor (TM)
yungcomputerchair opened this issue · 0 comments
yungcomputerchair commented
Per our earlier discussion, the new pathing system is pretty much the only thing in the way of full feature completion.
Here were our general thoughts:
- We should bring back static NPC IDs, and keep dynamic IDs reserved for things like summoned/instanced NPCs (see this tabledata issue)
- Regarding
paths.json
,skyway
andslider
sections will likely remain unchanged. As for the static NPC paths, I'm thinking the following:- Allow linkage to BOTH NPC IDs AND NPC types. Would require two fields. Best of both worlds.
- Make the identifier fields arrays so you can apply a path to multiple different IDs and types.
- Add either a flag or a couple fields that
- mark the path as relative to NPC spawn point or absolute world coordinates
- mark whether or not the path is a cycle, i.e. should be repeated eternally (always true unless it's an escort path?)
- mark whether the path is an escort mission path (this might not be necessary if we get creative with
stop
)
- Merge
npc
andmob
sections. Those shouldn't be separate since they are virtually identical
- Add some commands to allow dynamic path construction in-game for stuff like summoned mobs, similar to /mss stuff
- From what I understand, the NPCs that you escort in escort missions are separate types from the static versions in the game world. If this is true, we can practically plug-and-play a static path to these suckers and call it a day with minimal extra logic. If not.... well, we'll figure it out.
Feel free to add anything I missed. I'll try and knock this out ASAP.