Download
(119Kb)
Download
Updated: 01-15-21 01:09 PM
Pictures
File Info
Compatibility:
Shadowlands patch (9.0.2)
Battle for Azeroth (8.0.1)
Legion (7.0.3)
Fury of Hellfire (6.2)
Warlords of Draenor (6.0.3)
Warlords of Draenor Pre-Patch (6.0.2)
Updated:01-15-21 01:09 PM
Created:01-23-10 09:23 PM
Downloads:57,636
Favorites:267
MD5:

Who Framed Watcher Wabbit?  Popular! (More than 5000 hits)

Version: 2.3.3
by: Seerah [More]

Note: This addon has been rewritten because of the changes to the quest tracker in WoD. Most everything has been re-implemented so far. (Button skinning has not been added yet, for example.)


KNOWN ISSUE: Blizzard's new quest tracker is very delicate and taints very easily, not allowing you to use quest items from the tracker itself. If this happens and a window pops up, click "Ignore". You can use one of several available addons to use quest items. I use the quest items ring on OPie, for example, or there is also QuickQuestItem or ExtraQuestButton or QuestItemButtonFix.

This addon will add many improvements to the new quest tracker frame. The slash command is /wfww. You may also alt-click the tracker's collapse button to access the options.

Features:
  • allows the quest tracker to be moved wherever you please
  • quest tracker will collapse in whichever direction it's anchored to (just up or down in WoD currently)
  • quest tracker remembers collapsed state
  • option to have scrollable quest tracker
  • adjust the scale of the quest tracker
  • adjust the font, font size, font flag (outline, etc.), or remove shadow
  • option to remove the art behind the section titles
  • adjust the spacing between lines (disabled in WoD currently)
  • give the quest tracker a background and/or border (border can be class-colored)
  • optional support for rActionButtonStyler to skin quest item buttons
  • adds a tooltip for quests to display their objective text
  • allows you to minimize/maximize (toggle) the tracker via keybind
  • option to automatically collapse the tracker when entering an instance or during pet battles
  • shortcuts added to the collapse button (toggle Quest Log, Achievement Frame, addon's options)
  • global or character specific profiles


History:
With the new quest tracker losing its ability to be moved freely, I set about adding support for it back into my minimap addon, PocketPlot. But it just wasn't as simple anymore with the way it was coded. So, I set out to create a standalone addon (or at least a module for PocketPlot). Originally named Movable WatchFrame, I started adding other features to the addon. Then I had to change its name, because it did much more than just moved the tracker. Thanks to Recompense for suggesting "Who Framed Watcher Wabbit?"


Looking for more?
These are other addons to enhance your questing experience which are tried and tested with WFWW. If you know of any more, let me know via PM and I can add them to this list.
  • Quelevel: Adds quest levels to the tracker, quest log, and gossip frames
  • Jobs'a'goodn: Plays sounds upon completion of quests and their objectives
  • QuestRouterLite: Adds the game's quest POIs to the minimap and works with TomTom to create waypoints for them automagically
  • TomTom: Allows you to set waypoints to destinations including a new feature to automatically show the way for quests
  • LightHeaded: Shows comments from the Wowhead website's quest database in a window attached to your quest log frame.



Known Issue:
If you alter the font size too much, you may have to reload your UI in order to have the quest tracker redrawn. Some text may also overlap if it flows onto a second line. In this case, consider adjusting the whole frame's scale instead.

v.2.3.3
- fix for Torghast anima buffs hiding in the scroll frame

v.2.3.2
- update for 9.0
- fixed backdrop errors
- updated for modified quest api

v.2.3.1
- fix for if WFWW catches PEW before the default ObjectiveTracker does

v.2.3
- update for BfA
- cleaned up options tables

v.2.2.1
- updated for Legion
- backend improvements for display of number of quests in log

v.2.2
- updated TOC for 6.2
- added new option to display number of quests in log at top of tracker
- fixed display of "Objectives" text when the tracker is scrolled and then minimized
- right-clicking the minimize button to show the quest log will now click "View All Quests" for you - which is the reason why you opened the log, right?

v.2.1.1
- fix bug with hidden scrollbar intercepting your mouse when you have scrolling disabled
- fix bug with pet battles (new objective tracker hides by default now, so WFWW's collapse in pet battles option now keeps the tracker from hiding, but will still collapse it)

v.2.1
- tracker now inside a scroll frame - maybe fixed taint with delicate quest item buttons???
- securehook tracker's SetPoint function instead of overwriting - this should help the delicate flower as well
(Note: nope, still broken)
- tracker now inside a scroll frame! - scroll through your quests and stuff (can disable in options)
- option to disable art behind section titles

v.2.0.1
- removed offending code that was causing taint that prevented you from using quest items - new tracker, why you have to be so delicate??? (this also caused an option or two to disappear, and you may need to reload the UI if making changes to the font or font size)
- yay, better solution to keybind code changes! (NOTE: do a clean install or delete the old bindings.xml file)
- fixed the nil "header" error
- catching a few more fontstrings

v.2.0
- rewritten for WoD
- most features have been re-implemented
- please file a bug report at my portal if you find any issues

v.1.9
- updated TOC for 5.2
- updated libraries

v.1.8.1
- should always be able to collapse/expand the watch frame now, even when the default UI doesn't think so
- will no longer show you as tracking 1 objective when really tracking nothing

v.1.8
- updated TOC for 5.1
- option to collapse watch frame during pet battles

v.1.7.4
- updated TOC for MoP
- updated libs
- removed "Monochrome" font flag because it crashes the client currently
- changed "Thick Outline" to "Monochrome Outline"

v.1.7.1
- updated libs
- updated TOC number
- tweaked options layout to fit larger window

v.1.7
- new: option to color border by class
- changed: border alpha now has it's own option (instead of being set with border color)

v.1.6
- updated TOC to 40100
- updated libs
- added option to automagically collapse tracker when entering an instance

v.1.5.4
- updated libs

v.1.5.3
- watch frame now expands if you get an auto-quest popup when it's collapsed

v.1.5.2
- fixed expand/collapse button again - now it's not too high
- bumped TOC version cause I forgot to before

v.1.5.1
- raise strata of collapse button so that its usable even if header text overlaps it from a large font size

v.1.5
- added a keybind to toggle (min/max) the quest tracker. You can set it in the WFWW options

v.1.4
- support for wide quest tracker feature for 3.3.3
- support for rActionButtonStyler skins (well, sorta - it just looks to see if it's installed, and then uses the skin texture/color)
- new options to change line spacing (thanks, seebs)
- random bug fixes and code cleanup for 3.3.3 and above changes

v.1.3.1
- fixed bug when mousing over achievements. Now you'll see the tooltip for the achievement instead!

v.1.3
- added tooltip for quests in the tracker, displaying their objective text
- added support for nUI (to keep it from hogging the watch frame) - thanks, Xrystal! (I did not add nUI to the OptionalDeps line in the .toc, figuring that since WFWW starts with a W, it would load close to the end. PLEASE let me know if I need to fix anything!)
- added option to remove the font shadow
- organized options a bit better

v.1.2
- added option to hide the watch frame when no quests or achievements are being tracked

v. 1.1.1
- fixed bug where your set height would not be reapplied when re-expanding the tracker

v. 1.1
- watch frame now remembers if it was collapsed before (saved per character)

v. 1.0
- initial release
Post A Reply Comment Options
Unread 02-26-10, 04:29 PM  
Xrystal
nUI Maintainer
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5936
File comments: 232
Uploads: 28
In furtherance ( is that a word ? rofl ) of my last post I just tested out my suggestion and with the current setup of this addon the following change would be enough for this addon to work with nUI.

At the beginning of SetUpContainer function put this before anything else. It looks to be enough to allow it to tell nUI to give control to wfww with the creation being in the OnUpdate routine instead of my initialisation stage :

Code:
if ( IsAddOnLoaded("nUI") ) then
	nUI_ResetWatchFrame = function() end;
	nUI_Movers:lockFrame( WatchFrame, false, nil );
	nUI_Options.movedWatchFrame = true;
end
__________________


Characters:
Gwynedda - 70 - Demon Warlock
Galaviel - 65 - Resto Druid
Gamaliel - 61 - Disc Priest
Gwynytha - 60 - Survival Hunter
Lienae - 60 - Resto Shaman
Plus several others below level 60

Info Panel IDs : http://www.wowinterface.com/forums/s...818#post136818
Report comment to moderator  
Reply With Quote
Unread 02-26-10, 11:32 PM  
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 10860
File comments: 687
Uploads: 33
Thanks, Xrystal.
__________________
"You'd be surprised how many people violate this simple principle every day of their lives and try to fit square pegs into round holes, ignoring the clear reality that Things Are As They Are." -Benjamin Hoff, The Tao of Pooh

[SIGPIC][/SIGPIC]
Report comment to moderator  
Reply With Quote
Unread 02-27-10, 02:20 PM  
Nightmare_Lord
A Cliff Giant
 
Nightmare_Lord's Avatar

Forum posts: 70
File comments: 27
Uploads: 0
yeah thanks

do I need to add that code myself or did you update your addon to have the code already?

Originally posted by Seerah
Thanks, Xrystal.
Last edited by Nightmare_Lord : 02-27-10 at 02:21 PM.
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 12:37 AM  
Xrystal
nUI Maintainer
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5936
File comments: 232
Uploads: 28
Seerah, I'll give it a run through some time tomorrow and make sure it works enough.

Oh, and if you haven't checked into the new watch frame changes you might want to Kinda broke my addon rofl.
__________________


Characters:
Gwynedda - 70 - Demon Warlock
Galaviel - 65 - Resto Druid
Gamaliel - 61 - Disc Priest
Gwynytha - 60 - Survival Hunter
Lienae - 60 - Resto Shaman
Plus several others below level 60

Info Panel IDs : http://www.wowinterface.com/forums/s...818#post136818
Last edited by Xrystal : 03-08-10 at 12:38 AM.
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 09:48 AM  
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 10860
File comments: 687
Uploads: 33
Originally posted by Xrystal
Seerah, I'll give it a run through some time tomorrow and make sure it works enough.

Oh, and if you haven't checked into the new watch frame changes you might want to Kinda broke my addon rofl.
Yeah, I really need to download the PTR... I'll have some time this week due to Spring Break.
__________________
"You'd be surprised how many people violate this simple principle every day of their lives and try to fit square pegs into round holes, ignoring the clear reality that Things Are As They Are." -Benjamin Hoff, The Tao of Pooh

[SIGPIC][/SIGPIC]
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 09:55 AM  
Xrystal
nUI Maintainer
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 5936
File comments: 232
Uploads: 28
Okay, just tested it out with the nUI changes and it seems to be working fine. It still has the objectives mover frame when you trigger the display of them but so does my addon. Once I figure out what stops that from happening I'll let you know. However, it doesn't affect either of our addons from doing their jobs
__________________


Characters:
Gwynedda - 70 - Demon Warlock
Galaviel - 65 - Resto Druid
Gamaliel - 61 - Disc Priest
Gwynytha - 60 - Survival Hunter
Lienae - 60 - Resto Shaman
Plus several others below level 60

Info Panel IDs : http://www.wowinterface.com/forums/s...818#post136818
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 10:46 AM  
Taigen
A Defias Bandit
 
Taigen's Avatar

Forum posts: 3
File comments: 82
Uploads: 0
Hi, I was wondering... is there any way to have the quest window grow and shrink according to how many quests you are tracking? On my lvling alts I ofen track 4-6, but not all the time, and my main certainly never has that many.
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 12:30 PM  
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 10860
File comments: 687
Uploads: 33
Originally posted by Taigen
Hi, I was wondering... is there any way to have the quest window grow and shrink according to how many quests you are tracking? On my lvling alts I ofen track 4-6, but not all the time, and my main certainly never has that many.
eh... I'm not necessarily willing to put in the time to figure out how to hack it in at the moment. A scroll frame may come in the future, but no promises on that either... (Xrystal's mod will give you a scroll frame if you prefer to use that one.) What you can do, though, is use a different profile on one of the toons.
__________________
"You'd be surprised how many people violate this simple principle every day of their lives and try to fit square pegs into round holes, ignoring the clear reality that Things Are As They Are." -Benjamin Hoff, The Tao of Pooh

[SIGPIC][/SIGPIC]
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 03:17 PM  
Oakayam
Premium Member
 
Oakayam's Avatar

Forum posts: 40
File comments: 136
Uploads: 0
I installed version 1.3 and I received this error when mousing over the achievement in the quest watch frame:

Message: Interface\AddOns\Who Framed Watcher Wabbit\wfww.lua:474: Usage: GetQuestLink(questID)
Time: 03/08/10 15:14:44
Count: 4
Stack: [C]: in function `GetQuestLink'
Interface\AddOns\Who Framed Watcher Wabbit\wfww.lua:474: in function <Interface\AddOns\Who Framed Watcher Wabbit\wfww.lua:471>
[C]: in function `WatchFrameLinkButtonTemplate_Highlight'
[string "*:OnEnter"]:1: in function <[string "*:OnEnter"]:1>
[C]: ?

Locals: (*temporary) = nil
__________________
Last edited by Oakayam : 03-08-10 at 03:21 PM.
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 04:27 PM  
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 10860
File comments: 687
Uploads: 33
Oopsie! Forgot to add the achievement support in there.
__________________
"You'd be surprised how many people violate this simple principle every day of their lives and try to fit square pegs into round holes, ignoring the clear reality that Things Are As They Are." -Benjamin Hoff, The Tao of Pooh

[SIGPIC][/SIGPIC]
Report comment to moderator  
Reply With Quote
Unread 03-08-10, 08:59 PM  
Oakayam
Premium Member
 
Oakayam's Avatar

Forum posts: 40
File comments: 136
Uploads: 0
Thumbs up Thanks

Thanks for a quick fix

*bearhugs*
__________________
Report comment to moderator  
Reply With Quote
Unread 03-12-10, 12:49 PM  
seebs
Premium Member
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 157
Uploads: 5
Is there a way to collapse blank lines -- to strip all the extra vertical space?

The other feature I'm curious about, which I want in every quest tracker, is the ability to make the quest text not intercept mouse actions, so I can click through it -- I often have a big chunk of screen tied up with my quest tracker, and I dislike losing the real estate.
Report comment to moderator  
Reply With Quote
Unread 03-12-10, 01:52 PM  
Toran
A Nerdscale Dorkin
 
Toran's Avatar
Premium Member

Forum posts: 143
File comments: 433
Uploads: 0
Maybe it's what seebs is asking for, but would be great to have a configurable section to decrease the vert space between quests. In addition, zone based headers and quest progress coloring would make this perfect. Quest progress sounds would be nice also.

Found this piece of code commented out. Is it for future button facade support for borders?

Code:
--bfSkin = {skin = "Blizzard", gloss = 1},
=-========

Found an interm solution for some of above. Smooth Quest. Although the sounds for quest progression don't fire, but quest completion does.
http://www.wowinterface.com/downloads/info8932-SmoothQuest.html
Last edited by Toran : 03-12-10 at 03:36 PM.
Report comment to moderator  
Reply With Quote
Unread 03-12-10, 02:32 PM  
Dajova
A Wyrmkin Dreamwalker
 
Dajova's Avatar
AddOn Author - Click to view AddOns

Forum posts: 58
File comments: 787
Uploads: 5
erm... im getting this error when i was done with customization:

Code:
[21:28:28] Interface\FrameXML\WatchFrame.lua:341: attempt to perform arithmetic on a nil value
[C]: ?
Interface\FrameXML\WatchFrame.lua:341: in function <Interface\FrameXML\WatchFrame.lua:329>
[C]: in function `WatchFrame_Update'
Interface\FrameXML\WatchFrame.lua:230: in function <Interface\FrameXML\WatchFrame.lua:223>
... and it looks like this
__________________
Livestream | Twitter | YouTube
Report comment to moderator  
Reply With Quote
Unread 03-12-10, 09:04 PM  
seebs
Premium Member
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 155
File comments: 157
Uploads: 5
I got curious, and after studying the blizzard quest frames for a bit, I've implemented line spacing controls.

Code:
--- /tmp/wfww.lua	2010-03-12 20:55:18.843583886 -0600
+++ wfww.lua	2010-03-12 20:58:27.932056147 -0600
@@ -25,6 +25,8 @@
 	font = "Friz Quadrata TT",
 	fontSize = 12,
 	fontFlag = "None",
+	questSpacing = 10,
+	lineSpacing = 6,
 	disableShadow = false,
 	scale = 1,
 	hideFrame = false,
@@ -148,6 +150,7 @@
 					db.font = font
 					nextline = 1
 					FontChanges()
+					WatchFrame_Update()
 				end,
 			order = 6,
 		},
@@ -163,6 +166,7 @@
 						db.fontSize = size
 						nextline = 1
 						FontChanges()
+						WatchFrame_Update()
 					end,
 			order = 7,
 		},
@@ -182,6 +186,7 @@
 						db.fontFlag = fontFlags[key]
 						nextline = 1	--start over from the beginning
 						FontChanges()
+						WatchFrame_Update()
 					end,
 			order = 8,
 		},
@@ -194,9 +199,42 @@
 						db.disableShadow = not db.disableShadow
 						nextline = 1
 						FontChanges()
+						WatchFrame_Update()
 					end,
 			order = 8.5,
 		},
+		questSpacing = {
+			name = "Quest Spacing",
+			desc = "Change the spacing between quests.",
+			type = "range",
+			min = 0,
+			max = 12,
+			step = 1,
+			get = function() return db.questSpacing end,
+			set = function(_,size) 
+						db.questSpacing = size
+						nextline = 1
+						FontChanges()
+						WatchFrame_Update()
+					end,
+			order = 8.51,
+		},
+		lineSpacing = {
+			name = "Line Spacing",
+			desc = "Change the spacing between lines.",
+			type = "range",
+			min = 0,
+			max = 10,
+			step = 1,
+			get = function() return db.lineSpacing end,
+			set = function(_,size) 
+						db.lineSpacing = size
+						nextline = 1
+						FontChanges()
+						WatchFrame_Update()
+					end,
+			order = 8.52,
+		},
 		spacer2 = {
 			name = " ",
 			type = "description",
@@ -404,6 +442,10 @@
 function FontChanges()
 	local font = LSM:Fetch("font", db.font)
 	WatchFrameTitle:SetFont(font, db.fontSize, db.fontFlag)
+
+	WATCHFRAME_QUEST_OFFSET = db.questSpacing
+	WATCHFRAME_LINEHEIGHT = db.fontSize + db.lineSpacing
+
 	for i = nextline, 50 do
 		line = _G["WatchFrameLine"..i]
 		if line then
The calls to WatchFrame_Update() are not in the FontChanges() routine because putting them there triggers an infinite recursion. It appears that a QUEST_OFFSET of 0 still leaves a little more space in front of quest headers than in front of other lines, but it's much more livable.

If the author wants this code, it's free for the taking. I explicitly release it into the public domain. (I'm not actually sure I could have any copyright in something so trivial, but I don't want anyone worrying about it.)
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: