I've encountered a bit of an issue. I'd
like to be able to handle links that are automatically enabled but it's a bit tricky. Eg. I was thinking of adding Ayren Caravan in the hub link because it offers an alternate way to get to Lyk. Now if Ayren hasn't been visited before then the function will say it can't reach it but the link is automatically available at Reifort. So if you can reach Reifort then you can reach Ayren. The same is true for Dalanis. If Dalanis gets marked as not visited then you wouldn't be able to reach Southern Janost, for example. But of course if you have been to Obsidian then it
can go to Dalanis via the envoys.
This means I'm concidering adding an optional override value to the connections which will increase the complexity. This is what an entry looks like at the moment.
Code: Select all
Rorazan = {Zone=22, Npc={Id=118219, X=-20708, Z=-22750, Y=564}, ConnectsTo={"Varanas,Silverspring","Dalanis,Thunderhoof","Chrysalia"}},
2 bits of information are usually needed for a connection; the destination and the option string if teleporting. I've set it up so most locations, and the option strings to get there, have the same name so you don't need to specify both, such as Crysalia in the example above. From Rorazan both Varanas and Dalanis use different strings (Silverspring and Thunderhoof Hills) so the option strings are included.
I think adding a possible third value is starting to become too unclear. So if I add this option I'm thinking of switching to a subtable even though it would make the node table longer. Eg.
Code: Select all
Rorazan = {Zone=22, Npc={Id=118219, X=-20708, Z=-22750, Y=564},
ConnectsTo={
{Node="Varanas",Option="Silverspring"},
{Node="Dalanis",Option="Thunderhoof"},
{Node="Chrysalia"}}}
Then I could add a 3rd option easily.
Or maybe I can just make a separate table of overrides. There wouldn't be that many. We just need to concern ourselves with links that go to hub nods. Eg.
Code: Select all
overrides.Reifort.AyrenCaravan = true
overrides.DalanisOsidianEvnoy.Dalanis = true