Download
(439Kb)
Download
Updated: 07-27-15 05:07 PM
Pictures
File Info
Compatibility:
Fury of Hellfire (6.2)
Updated:07-27-15 05:07 PM
Created:07-22-11 11:47 PM
Downloads:11,491
Favorites:67
MD5:

QuestKing 2  Popular! (More than 5000 hits)

Version: 2.2.4
by: Barjack [More]

NOTE

This addon does have some in-game configuration via slash-commands (for example, for dragging and locking the tracker). However, more detailed customization (if required) must be done by editing values in Lua files. See options.lua for more information. There are no plans to add detailed in-game configuration menus.

Description

QuestKing is a complete replacement for Blizzard's default objective tracker/quest tracker. It is designed to be simple, compact and unobstrusive while supporting all the features of the default tracker, plus some of its own.

QuestKing is inspired by old-school quest trackers like GuestGuru, bEQL and MonkeyQuest. However, QuestKing is written from scratch to be a modern objective tracker that supports not only quests, but all the new types of objectives that Blizzard has gradually added to WoW. This includes achievements, scenarios, dungeon objectives, bonus quests, timed objectives, challenge modes, proving grounds, automatic quests, and so on. I have tried to keep the tracker as efficient as possible, and it should hopefully be kind to both your CPU and memory.

The following standard objective tracker features are supported:

  • Quests! Including quest items (non-tainting and usable in combat), sequenced quests, timed quests, and notifications for automatically received/completed quests.
  • Achievements! Including guild achievements and timed achievements.
  • Scenarios! Including bonus objectives and reward animations.
  • Dungeons! Plus bonus objectives and reward animations.
  • Challenge Modes! Including a fully functional medal timer.
  • Proving Grounds! Including wave timers and endless mode scoring.
  • Bonus Objectives! Including progress bars, animations, and reward display.
  • POI Tracking! Just like the default tracker, you can click quests to set your active destination.

QuestKing also provides the following *additional* features:
  • A special notification which appears when you loot an item which starts a quest.
  • Zone/category headings whose contents can be shown or collapsed.
  • Toggleable tracker with three different levels of information display (full, contextual only, none).
  • Three different tracking display modes which you can freely toggle between (quests only, achievements only, combined).
  • Compact, space-efficient design.
  • Quests and objectives colour coded according to level, completion, progress percentage, etc.
  • Customizable position, size, colours and font.
  • Animations for various events including objective progress, new or updated quests and objectives, and so on.

And with the optional but included QuestKingSounds standalone addon:
  • Quest sounds (fully customizable, with options for quest completion, objective completion, and objective progress sounds).

Sadly, there are a couple of things QuestKing does not and probably will not support. Because QuestKing is a categorized tracker, it does not suport changing the sort order dynamically based on zone/distance. It will always show your tracked quests in the same order and category as the quest log itself. It also takes a more conservative approach to supertracking (see the section on supertracking below).

Options

QuestKing comes with a number of slash commands for basic customization. They are as follows.

/qk lock - Locks and unlocks the tracker, making it draggable.
/qk scale - Sets the tracker's scale. Default is 1. Set to 1.2 for 20% larger, etc.
/qk alpha - Sets the tracker's transparency. Default is 0.9, and valid values are 0 to 1.
/qk origin - Sets the point from which the tracker "grows". Default is TOPRIGHT. Other valid values are TOPLEFT, BOTTOMLEFT, BOTTOMRIGHT.
/qk reset - Resets all collapsed objectives and headers.
/qk resetall - Resets all QuestKing settings (global and for the current character).

Many other options are configured by editing values in Lua files. A list of all default options is shown in options.lua, with comments provided next to many variables in case their name is not sufficiently descriptive. You may edit options directly in options.lua if you wish, but you should also consider using options_override.lua to override just the defaults that you want to change. See the comments at the top of options_override.lua for more information.

QuestKingSounds

QuestKing comes with a bundled addon, QuestKingSounds, providing sound alerts for objective progress, completed objectives, and completed quests. This addon is entirely separate from QuestKing and neither depends on the other. You can install QuestKing without QuestKingSounds, or even install QuestKingSounds by itself without using QuestKing. If you do want to use it, you may configure it in the same way QuestKing is configured by looking at options.lua and options_override.lua.

Colours

Quests are coloured according to their difficulty, with some exceptions. Completed quests are coloured bright blue. Completed quests that can be turned in from anywhere are dark blue. Quests with no valid objectives are coloured pale green, indicating a probable "connector" quest (a quest that doesn't need to be "completed" but rather simply requires you to visit some other questgiver, often in another zone or area). Objectives are coloured fading from red to green as they are completed, then finally pale purple at completion (to make it easy to distinguish between a 100/100 objective and a 99/100 objective). Many of these colours are configurable in Lua should you wish to do so.

In-Game Tracker Usage

Mode Button [Q/A/C button]:
- [Left click] to cycle between quest (Q) and achievement (A) view mode.
- [Right click] to cycle into combined (C) mode, where both are shown together (achievements are shown under their own header).

Collapse Button [+/-/x button]:
- [Left click] to toggle collapsing the tracker (+/- modes). A collapsed tracker won't show tracked quests or achievements, but it will still show important and contextual information, like dungeon objectives, quest notifications, and bonus objectives.
- [Right click] to collapse the tracker completely (x mode). A tracker in this mode will never show any information at all.
- [Shift] + [Left click] to cycle the tracker between alternative position presets (if in preset mode).
- [Mouse wheel] to fade in a tracker backdrop (helps to increase visibility).

Notifications (e.g. automatic quests, quest-starting item pickups):
- [Left click] to open.
- [Right click] to dismiss.

Headers:
- [Left click] to collapse.

Quests/Achievements:
- [Left click] to open.
- [Right click] to set active supertracked quest.
- [Shift] + [Left click] to link to chat while the chat editbox is open.
- [Shift] + [Left click] to open the quest in Classic Quest Log, if it's installed (only when chat editbox is not open).
- [Alt] + [Left click] to hide objectives.
- [Alt] + [Right click] to stop tracking this quest/achievement.

A note on supertracking

Supertracking is the term for the "actively tracked" quest whose objective is highlighted more strongly on your map and minimap, and for which a minimap arrow appears. On the default objective tracker and the default map, you do this by clicking the big circled numbers. In QuestKing, you can still use the map as usual, or you can do it by right-clicking the title of a quest (a small yellow dot will appear after the name of the actively supertracked quest). You can right click the same quest again to remove the dot and disable supertracking. Unlike the Blizzard system, you can even use this to supertrack bonus objectives or quests in other zones.

Note however that QuestKing takes a more careful approach to automatic supertracking compared to the default objective tracker. First, QuestKing strongly supports the concept of supertracking no quest at all, and will never automatically set a supertrack target if supertracking is not currently active. This means you won't get minimap arrows constantly appearing and changing around when you're not doing any questing at all. QuestKing will automatically change the supertracked quest only if you are actively questing. This is determined to be the case in three situations:

1) You complete all the objectives of a quest. In this case the closest available quest will be supertracked (which might be the turn-in of the same quest).
2) You accept a new quest. In this case also, the closest available quest will be supertracked.
3) A quest you were tracking is removed from your quest tracker. Again, the closest available quest will be supertracked.

Note that even without any quest supertracked, quest objective areas will always be available and highlighted on the map and minimap. Supertracking only sets the minimap arrow and makes the objective area stand out more.

Notes

Looking for an old-school style quest log to go with your old-school style tracker? I recommend Classic Quest Log by Gello. It's a great addon that works perfectly alongside QuestKing, without any overlapping functionality.

I would like to thank the creators and maintainers of the quest trackers who came before me. Bayi, mrobrian, Gregity, Lazare, Jim-Bim, and many others. QuestKing was heavily inspired by the appearance and functionality of these great addons. And of course, thank you to the authors of Blizzard's own objective tracker (which I referred to constantly while writing this), and to all those who helped document WoW's UI on sites like WoWProgramming and WoWpedia.

Comments, constructive feedback, and bug reports are welcome. I hope you enjoy this addon.

2.2.4
- Fixed a bug with PetTracker integration where the pet zone tracker would frequently reappear even when disabled.
- Added an option to hide the border of the mode toggle buttons (opt.hideToggleButtonBorder, false by default).

2.2.3
- Added a very ugly hack that enables compatibility with PetTracker's objective tracker panel.

2.2.2
- Increased TOC for patch 6.2.
- Fixed bug with bonus objective display (caused by 6.2 patch).
- Fixed bug related to new text format for some reputation objectives (caused by 6.2 patch).
- Fixed display color for objectives whose quota is exceeded rather than merely met.

2.2.1
- Attempted to fix a bug which happened sometimes when multiple bonus objectives were displayed at the same time.

2.2.0
- Improved how superceding objectives are displayed (e.g. Garrison invasion point objectives). If you want the old behaviour (all objectives always visible), then set opt.hideSupersedingObjectives to false.
- Slightly increased the time bonus rewards are displayed from 7 to 10 seconds.
- Fixed how "reptutation"-style objectives are displayed to avoid truncation.
- Fixed some issues in locales that show objective description/count in reverse order (e.g. ruRU).

2.1.1
- Fixed an error that happened when the tracker queued an update for after combat.
- Changed supertracking to always check for the closest POI when accepting a quest.

2.1.0
- Added "/qk scale" to set the tracker scale.
- Added "advanced background" option for better looking backgrounds.
- Fixed the default objective tracker re-appearing after visiting the barber.
- Fixed the scenario stage objective overlay appearing twice when zoning into a scenario or dungeon. (Workaround for Blizzard bug with LevelUpDisplay.)
- Cleaned up some code.

2.0.0
- Massive re-write for WoD.
Optional Files (0)


Post A Reply Comment Options
Unread 07-23-11, 12:51 AM  
Manaman
An Aku'mai Servant
AddOn Author - Click to view AddOns

Forum posts: 39
File comments: 160
Uploads: 1
Sounds like Monkeyquest resurrected from the out of date ashes, basically. I have gotten too used to quest blobs on the map to try this out, but nice that someone is bringing back the concept.
Report comment to moderator  
Reply With Quote
Unread 07-23-11, 01:03 AM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
Originally posted by Manaman
Sounds like Monkeyquest resurrected from the out of date ashes, basically. I have gotten too used to quest blobs on the map to try this out, but nice that someone is bringing back the concept.
Yeah, I was really missing those kind of old-school trackers but fixing any of them up to work with 4.0 was too much for me, so I ended up starting from scratch.

Just to clarify though, the POI buttons are still on the map using this, they just aren't on the tracker itself (like that are on Blizzard's version). So with this you can open the map to see POIs, and you can also right-click a quest on the tracker to set its POI active (if possible). But there's no buttons on the tracker itself to show you if that quest actually "has" a POI.
Report comment to moderator  
Reply With Quote
Unread 07-23-11, 05:04 AM  
Manaman
An Aku'mai Servant
AddOn Author - Click to view AddOns

Forum posts: 39
File comments: 160
Uploads: 1
Ah, misread the description, thanks for the clarification.
Report comment to moderator  
Reply With Quote
Unread 08-01-11, 03:07 AM  
Taabissa
A Deviate Faerie Dragon

Forum posts: 13
File comments: 3
Uploads: 0
Awesome

This looks exactly like what I am looking for, atleast I hope so. Trying to replace carbonite with lighter addons.

With my UI however, is there a way to anchor it to the bottom right and have it grow up? I won't have time to try it in game until later.
__________________
Report comment to moderator  
Reply With Quote
Unread 08-01-11, 05:57 AM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
Re: Awesome

Originally posted by Taabissa
This looks exactly like what I am looking for, atleast I hope so. Trying to replace carbonite with lighter addons.

With my UI however, is there a way to anchor it to the bottom right and have it grow up? I won't have time to try it in game until later.
I use a top-anchor and grow-down but I believe it should also work when anchored to the bottom. To change the anchoring you'd edit the positionPresets table, e.g.

Code:
local positionPresets = {
	{ "TOPRIGHT", "UIParent", "TOPRIGHT", -2, -154 },
	{ "TOPRIGHT", "UIParent", "TOPRIGHT", -159, -16 },
}
Changing the first line to something like
Code:
{ "BOTTOMRIGHT", "UIParent", "BOTTOMRIGHT", -2, 150 },
Should result in the frame being anchored from the bottom right, 2 pixels left, and 150 pixels up in your UI, for example.

My testing with other anchor positions hasn't been extensive, though, so let me know if there are any problems.
Report comment to moderator  
Reply With Quote
Unread 08-29-11, 08:43 AM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
Originally posted by ...
proximity-based sorting
I've removed this comment since I'm a little insulted by your offensive labeling of this addon simply because it does not have a feature you would like. Regardless, I will address the issue of why this feature is not present in case others are interested.

I've thought about implementing proximity-based sorting but there are the following problems:
  • It introduces OnUpdate checks that can potentially rebuild the tracker when no such things currently exist. I've managed to make the tracker entirely event-based (save for quest item buttons which use Blizzard code) and this represents a significant performance compromise.
  • SortQuestWatches() results in nonsensical sorting for quests outside of the current zone/area. The tracker currently uses log/level order. While switching to proximity seems logical for the current zone, it also means trusting the sort to sort remote zones which it essentially does not do. For me at least, this is worse than having no sort at all.
  • I think sorting makes less sense (though still some sense) in a categorised tracker, since the categories themselves represent at least a rough proximity-based sort in terms of zones.
There are potential workarounds that are possible but I'm not sure I like any of them. The second point can be worked around by simply ignoring this inconsistency, which is not ideal. Or maybe checking the current zone and ignoring all sort data for other zones, but that leaves open the possibility of the tracker behaving in an non-ideal fashion when questing between two adjacent zones, and doesn't work at all when quest headers don't match zones (e.g. "The Zandalari").

Since point 2 essentially means I myself won't use proximity-based sorting, I'm somewhat reluctant to implement it. I may still do so at some point, but personally the occasional opening of the map makes more sense than trying to work proximity-based sorting into the tracker.
Report comment to moderator  
Reply With Quote
Unread 09-01-11, 10:54 PM  
eqsanctum
The Great Equalizer
 
eqsanctum's Avatar
Premium Member

Forum posts: 155
File comments: 45
Uploads: 0
Originally posted by Barjack
[b]I've removed this comment since I'm a little insulted by your offensive labeling of this addon simply because it does not have a feature you would like.
Personally I would have left it out period. I saw the post. Thank you though for the explanation I was going to ask about the ordering myself was just thinking of a proper way of doing so without being offensive *cough*
__________________
"I make addons, mods, and interface compilations for options. No matter how good of a game dev you are, you do not know what I like." - EQSanctum
Report comment to moderator  
Reply With Quote
Unread 09-22-11, 11:02 AM  
Shabazza
A Kobold Labourer

Forum posts: 1
File comments: 50
Uploads: 0
Hello,

great lightwight questaddon. Is there a way to hide the questitems? I use Questbar an i dont need a button to klick on the tracker.

regards, Sha
Report comment to moderator  
Reply With Quote
Unread 09-22-11, 11:33 AM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
Originally posted by Shabazza
Hello,

great lightwight questaddon. Is there a way to hide the questitems? I use Questbar an i dont need a button to klick on the tracker.

regards, Sha
Currently, there's no option to do that. I have added it to the next version, but it's probably not worth releasing an entire update for such a small change (only 1 line). In the next version, you can set itemAnchorSide to nil to hide item buttons.

For the current version, you can edit this manually since it's very simple. First set itemAnchorSide to nil instead of "left". Then change this line (approx line 1317):

Code:
if item and ((isComplete ~= 1) or (showItemWhenComplete)) then
to

Code:
if itemAnchorSide and item and ((isComplete ~= 1) or (showItemWhenComplete)) then
This change will make sure item buttons are never created if itemAnchorSide is nil.
Report comment to moderator  
Reply With Quote
Unread 10-10-11, 07:29 AM  
Sec
A Cyclonian
 
Sec's Avatar

Forum posts: 48
File comments: 177
Uploads: 0
Hi there, I get the following error on log-in, as well as when I obtain items (like buy something from an NPC). My quest tracker appears minimized and if I try to expand it, I also trigger the following error.

Code:
Message: Interface\AddOns\QuestKing\tracker.lua:1587: bad argument #1 to 'tinsert' (table expected, got nil)
Time: 10/10/11 09:28:55
Count: 7
Stack: [C]: ?
[C]: in function `tinsert'
Interface\AddOns\QuestKing\tracker.lua:1587: in function <Interface\AddOns\QuestKing\tracker.lua:1564>
Interface\AddOns\QuestKing\tracker.lua:912: in function <Interface\AddOns\QuestKing\tracker.lua:901>
Interface\AddOns\QuestKing\tracker.lua:415: in function <Interface\AddOns\QuestKing\tracker.lua:399>

Locals:
Report comment to moderator  
Reply With Quote
Unread 10-10-11, 02:18 PM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
Originally posted by Sec
[b]Hi there, I get the following error on log-in, as well as when I obtain items (like buy something from an NPC). My quest tracker appears minimized and if I try to expand it, I also trigger the following error.
Hi. Thanks for the bug report. I had a look at that function and have a pretty good idea what is going wrong. Unfortunately I can't actually replicate your problem even though I can guess at what's causing it, so I can't tell on my PC if this fix actually works.

Are you comfortable editing your .lua file and testing to see if this fix works? The change is:

To go tracker.lua, line 1587 (where that error is happening). From 7 lines before that line, to 1 line after, there will be a section of code that looks like this:

Code:
		if (isHeader) and (not isCollapsed) then
			currentHeader = title
			tinsert(headerList, title)
			if not questSortTable[title] then
				questSortTable[title] = {}
			end
		elseif (not isHeader) and (IsQuestWatched(i)) then
			tinsert(questSortTable[currentHeader], i)
		end
replace this block of code with:

Code:
		if (isHeader) then
			currentHeader = title
			tinsert(headerList, title)
			if not questSortTable[title] then
				questSortTable[title] = {}
			end
		elseif (not isHeader) and (IsQuestWatched(i)) then
			if (not questSortTable[currentHeader]) then
				questSortTable[currentHeader] = {}
			end
			tinsert(questSortTable[currentHeader], i)
		end
If you could let me know if that works, that'd be great. I've already made the change myself but since I don't know if it actually works, I'd prefer to hold off on releasing a new version until the fix is confirmed to work.

Incidentally, are you running an addon that changes the appearance of the Quest Log in some way, or something similar? Some sort of unusual set-up in the log? Although I can guess at what's going wrong, as far as I know it should be impossible for this to happen in the default UI, so I'm curious as to what's going on here.
Report comment to moderator  
Reply With Quote
Unread 10-16-11, 07:46 AM  
Sec
A Cyclonian
 
Sec's Avatar

Forum posts: 48
File comments: 177
Uploads: 0
Apologies for the late reply.

I made the change in code that you specified. Upon reloading my UI, I was no longer given any errors. On character log-in, again, no errors. While I do have a heavily modified UI (custom, not pre-packaged), QuestKing was the only addon running to modify the quest tracker as I try to avoid stacking addons to avoid complications.

If any other issues pop up, I'll report on them, but all is well now. Thank you for the fix.
Report comment to moderator  
Reply With Quote
Unread 10-16-11, 04:38 PM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
Awesome. Thanks for confirming that fix for me. I'll include it in the next release.
Report comment to moderator  
Reply With Quote
Unread 12-03-11, 01:13 PM  
Barjack
A Black Drake
AddOn Author - Click to view AddOns

Forum posts: 89
File comments: 58
Uploads: 7
An update for 4.3 has been added. No known bugs were introduced by the patch, so please consider this an optional upgrade. The only features are a workaround for a very rare bug that only happens for some people, and the addition if a very minor feature (ability to disable item buttons).

Of course, if you do encounter bugs related to the patch or otherwise, feel free to let me know. Once again, 0.61 is essentially a TOC update for most people and may be considered optional.
Last edited by Barjack : 12-06-11 at 02:36 AM.
Report comment to moderator  
Reply With Quote
Unread 02-07-12, 01:14 PM  
Shabazza
A Kobold Labourer

Forum posts: 1
File comments: 50
Uploads: 0
Hi,

i have a strange behavior with my questlog. Sometimes when i log in, my quest are looking like this:

http://img96.imageshack.us/img96/8292/log1k.jpg

When i open the worldmap f.e. or reloadui once the log looks like this:

http://img843.imageshack.us/img843/5676/log2v.jpg

When i click on another quest, and go back to the previous, then it looks broken again.

I don't know if it is a QuestKing problem, but when i disable the addon, everything is fine...

regards, Sha
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: