Questie

Questie

116M Downloads

Tracker - Sort by Proximity

Crumdidlyumshis opened this issue ยท 18 comments

commented

Description

Great addon! Would be awesome to add a selection to the dropdown for tracking quests by Proximity, closest to furthest and dynamically changing as such. I currently use ButterQuestTracker for this, however, it seems to be broken at the moment. I would prefer to use the Questie tracker.

I apologize before-hand if this is a duplicate as I could not find any issues regarding this. Thanks!

commented

Do you remember the old QuestHelper addon? In my opinion, it was the best.

It drew little trails showing you proximity, but also what quests to do next... what path to take around a zone for fastest clearing of all the quests you had.

Add another small feature to that to allow it to include pickup of quests in the path, and man... you'd have a perfect questing addon.

commented

A simple feature that might help would be an option similar to "Automatically Track All Quests", but only in the player's current zone. This way, only quests for your current zone are displayed. For example, dungeon quests would only display when you're actually in the dungeon, Stranglethorn Vale quests would only show when you're in Stranglethorn Vale, etc.

commented

@timzwiebel ,

I love that idea! I forgot about that feature from QuestHelper... but it was great.

When you went into a Zone, the only quests you saw on the tracking panel were the quests for that zone or dungeon. Kept things clean. Would love this feature! (=

commented

Giving this a bump.

The addon 'Butter tracker' (not a typo) is able to sort by proximity using Questie's data but its tracker can only list 5 quests. It may be relatively easy to copy/mimic its code to do so, though.

commented

Fixed on master and will be released shortly with v6.0.0

commented

To whom it may concern, I was able to get this working. I'm not sure how to submit the code so it can be patched into the main version everyone can have.

commented

Simply commit the code to a Questie fork of you and create a pull request.

Sorry for not investing more time into such feature requests. Time is limited and I am the only active dev.

commented

@Thortok If you want, you can simply paste the code here and I will add the option. You should be able to simply copy an existing option though to add a simply checkbox :) Feel free to contact me on Discord if you need any specific help.

commented

Uh, sorry, I'm a total Github noob. That's like greek to me lol.

Also, I just hacked it in as a 'if true then' to override the other sort settings. Let me make it a true 'setting' and then I'll try to figure out how to do what you said.

And yeah, no worries, life gets in the way. It was actually kind of a fun challenge to do it myself. I miss coding!

commented

@BreakBB - I....think I did it?

I actually am not awake enough to figure out how to actually code the setting, though, so it's still on 'if true then' override, but I put lots of comments in so it should be easy to take over from there.

In the meantime I can just use my version until it's a setting for everyone.

Thanks for all the hard work! Great addon!

commented

I added one line to embeds.xml in order to copy the ZoneHelper folder from Butter quest tracker:

https://pastebin.com/ivY3Jfid

I added two lines to prevent nil errors when quest.objectives was nil in the QuestieMap.lua file (near line 763)

https://pastebin.com/KntRN6uL

And the majority of my work was in QuestieTracker.lua

You can ignore/delete the print_table function I used it for debugging and learning how the tables were structured

I tried to comment all my changes

Currently at line 710 is the "if true then" that I mentioned in my earlier comment

Also, lines 959-963 make a tomtom arrow at the closest quest every 5 seconds - definitely not for public consumption unless turned into an option or something, so take those out.

Anyway here you go: https://pastebin.com/wbcMEnqH

These pastes are based off the version on twitch/curseforge I got just a day or two ago

commented

So because I really, REALLY, want this I've made a fork with it, which I won't PR, because I'm sure it's lacking and of course it's not my work ^.^;;

I disabled the 5 second arrow update, and I think the Timer needs triggering/disabling properly on option changes, but for me, for now it'll do.

commented

Noted, it's been a long time since I've worked on add-ons XD

I'm just glad I finally got it to work

commented

@hanfox

Right now it's not possible to change the setting to anything else because I didn't code it as a setting but more of an override

Let me know if you experience any bugs and I will try to fix

commented

@Thortok I added the option to change it properly in my fork.

You can look at the commit above my comment.

I also took out the hook you added for triggering the timer from the player entering the world, and placed it in Questie's initialization function for its Quest Tracker. There's no need for a whole new hook just for the timer :)

The only thing it really lacks is polish, proper credit to Butter for the library, the MIT License in the library, and a proper way to enable/disable the timer when changing sorting options.

commented

@BreakBB Done. I'm sure it'll need some tweaks. I'm not very good at LUA...

commented

@hanfox If you would create a PR for this feature that would be great. Also it would be easier to simply comment and highlight improvements for you on the PR so you don't feel like it is not worth it to be merged.

Any help on Questie is really appreciated since we're just a few devs without much time.

commented

Didn't realize how this simple enhancement thought would end up so popular ๐Ÿ•บ ๐Ÿฅณ

Glad it gained attention. Hope to see the pull request @hanfox made become merged! Looks good! Thanks you both @Thortok and @hanfox for your contributions!