SorhaQuestLog is a basic Quest/Achievement addon similar to MonkeyQuest and nQuestLog.
It allows the display of quests and achievements on the screen in an configurable way.

Options panel is accessible using /sql or /sorhaquestlog

Quest Controls

Hidden Quests

  • Click the square at the top of the tracker to show/hide hidden quests
  • Right-click a quest to show or hide it.


  • Left-click a zone to collapse/expand it
  • Right-click a zone to open a menu to show/hide quests
  • Alt + right-click a zone to open a menu to show/hide zones


  • Left-click a quest to open quest text pane. (Alt-Left if you enable full log option)
  • Alt + Left-click a quest to open quest in world map log (Left if you enable full log option)
  • Control left-click a quest to set it as the active quest tracking
  • Alt + Ctrl left-click a quest to abandon it. (Can disable confirm dialog in options)


Core Features:

  • Individual Minions for Quests, Achievements and Scenarios
  • Auto Show/Hide options when entering instances, arenas, combat, pet battles, the outside world etc.
  • Can hide the default blizzard quest frame
  • Handles blizzards remote quests
  • Borders and background for minions
  • LDB Module

Quest Log Minion Features:

  • Expandable/collapsible zone headers
  • Auto collapsing/expanding zone headers as you change zones
  • Hide Zone headers when all their quests are hidden
  • Expand collapse menu available using alt-right-click on a zone
  • Hide quests by right-clicking the quest or by selecting it from its zone headers right-click menu
  • Hide completed objectives
  • Can completely hide quest tracker when tracking no quests
  • Hide or re-size item buttons
  • Colour objective texts and statuses by completeness(gradual) , state(done/undone) or choose a custom colour
  • Colour quest titles and level texts by level, completeness(gradual) , state(done/undone) or choose a custom colour
  • Changeable fonts, font shadowing and font sizes for Zones, Quests and Objectives
  • Adjustable indentation for quests and objectives
  • Option to display only the quest details pane of the quest log when left-clicking a quest. (Alt left click to get the full quest log panel)
  • Ctrl left-click a quest to set it as the active quest for blizzards minimap tracker, (Dugi arrow support)
  • Alt + Ctrl left-click a quest to abandon it. (Can disable confirm dialog in options)

Achievement Minion Features:

  • Customizable text by choosing fonts, sizes, shadowing and colours.
  • Customizable textures for progress bars
  • Optional progress status bars for the achievements that can have them
  • Option to limit the number of tasks displayed per achievement

Notification Features:

  • Customizable sounds for quest/objective complete and quest starting item picked up notifications.
  • Choose custom sounds for quest completions and objective completions
  • Re-direct the objective completion messages elsewhere with LibSink

Recent Changes

New since v1.4.8

  • Track world quests
  • Link Scenario and achievement minions to quest minion

Other Stuff >.>

Bug reporting and Suggestions
You can report bugs or suggestions using wowaces ticket system at:

If you want to help localize SorhaQuestLog you can do so using the wowace localization section at:

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Narzual Narzual Nov 28, 2010 at 12:13 UTC - 0 likes

    Just wanted to say that this is hands down the best quest tracker. I have tried them all and they are not as clean or as functional as this one. Congratz and good job on this!

  • Avatar of Akgis Akgis Nov 27, 2010 at 20:10 UTC - 0 likes

    Seems like its remenbering the headers properly, thanks sorha2

  • Avatar of Sorha2 Sorha2 Nov 27, 2010 at 12:47 UTC - 0 likes

    Narzual, am hoping to get something of the sort done.
    Just takes a while because of the way the trackers are done :(

    Akgis have a feeling that's caused by the auto collapsing/expanding.
    I never use those so missed an issue there :(
    Will see what I can do towards fixing it ^_^

  • Avatar of Akgis Akgis Nov 27, 2010 at 12:38 UTC - 0 likes

    Fairly annoying bug

    WIth the options "Allow Hidden quests" and "Hide zone headers with only hidden quests" the minion appon login or zone shows Zone headers even with if only have hidden quests.

  • Avatar of Narzual Narzual Nov 27, 2010 at 12:13 UTC - 0 likes

    IDEA! Could you put an option in to combine the Achievement Tracker with the Quest Traker? Maybe have a little button to switch from quest to achievements so we don't need a second tracker. What do you think?

  • Avatar of Sorha2 Sorha2 Nov 26, 2010 at 00:38 UTC - 0 likes

    My bad on that one there to cakelord...
    Seems I managed to totally forget that library >.<
    I don't run into the error because another addon somewhere must be loading it for me though, thus why it made it this far ^_^

    Hopefully going to finally have these errors fixed next in r40.. but time will tell :(

  • Avatar of cakelord cakelord Nov 25, 2010 at 16:34 UTC - 0 likes

    hey getting this error with the latest revision:

    [16:29:59] Interface\AddOns\SorhaQuestLog\Core.lua:664: attempt to index global 'AceGUIWidgetLSMlists' (a nil value) (tail call): ? Interface\AddOns\SorhaQuestLog\Core.lua:664: in function <Interface\AddOns\SorhaQuestLog\Core.lua:297> Interface\AddOns\SorhaQuestLog\Core.lua:1682: in function `SetupOptions' Interface\AddOns\SorhaQuestLog\Core.lua:1607: in function <Interface\AddOns\SorhaQuestLog\Core.lua:1596> (tail call): ? [C]: ? [string "safecall Dispatcher[1]"]:9: in function <[string "safecall Dispatcher[1]"]:5> (tail call): ? Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:514: in function `InitializeAddon' Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:628: in function <Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:621>

  • Avatar of Sorha2 Sorha2 Nov 24, 2010 at 15:59 UTC - 0 likes

    My bad on the embed version being nested inside another folder, should be fixed in the next revision..
    I hope

  • Avatar of Skylinee Skylinee Nov 24, 2010 at 15:08 UTC - 0 likes

    1x SorhaQuestLog-0.4\Core.lua:1: Usage: EmbedLibrary(addon, libname, silent, offset): 'libname' - Cannot find a library instance of "LibSink-2.0". AceAddon-3.0-10 (Ace3):210: in function `EmbedLibrary' AceAddon-3.0-10 (Ace3):192: in function `EmbedLibraries' AceAddon-3.0-10 (Ace3):159: in function `NewAddon' SorhaQuestLog-0.4\Core.lua:1: in main chunk

    Locals: self = <table> { DisableAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:571: EnableAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:536: EmbedLibrary = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:207: InitializeAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:513: IterateAddonStatus = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:613: EmbedLibraries = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:189: initializequeue = <table> {} statuses = <table> {} GetAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:174: NewAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:126: IterateModulesOfAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:618: IterateEmbedsOnAddon = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:617: embeds = <table> {} IterateAddons = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:603: frame = AceAddon30Frame {} addons = <table> {} enablequeue = <table> {} } addon = <table> { SetDefaultModuleLibraries = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:383: Enable = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:315: RegisterChatCommand = <function> @ Ace3\AceConsole-3.0\AceConsole-3.0.lua:85: EnableModule = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:348: modules = <table> {} GetModule = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:231: IterateEmbeds = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:458: SecureHook = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:339: defaultModuleLibraries = <table> {} TimeLeft = <function> @ Ace3\AceTimer-3.0\AceTimer-3.0.lua:363: UnregisterChatCommand = <function> @ Ace3\AceConsole-3.0\AceConsole-3.0.lua:111: RawHookScript = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:398: ScheduleRepeatingTimer = <function> @ Ace3\AceTimer-3.0\AceTimer-3.0.lua:301: CancelAllTimers = <function> @ Ace3\AceTimer-3.0\AceTimer-3.0.lua:341: Printf = <function> @ Ace3\AceConsole-3.0\AceConsole-3.0.lua:69: SetDefaultModulePrototype = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:425: name = "SorhaQuestLog" IsEnabled = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:467: orderedModules = <table> {} ScheduleTimer = <function> @ Ace3\AceTimer-3.0\AceTimer-3.0.lua:276: DisableModule = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:366: RegisterMessage = <function> @ Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:118: GetArgs = <function> @ Ace3\AceConsole-3.0\AceConsole-3.0.lua:144: Print = <function> @ Ace3\AceConsole-3.0\AceConsole-3.0.lua:54: IsHooked = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:496: hooks = <table> {} NewModule = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:256: IsModule = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:484: UnhookAll = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:480: SetDefaultModuleState = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:403: Unhook = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:421: SecureHookScript = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:413: SetEnabledState = <function> @ Ace3\AceAddon-3.0\AceAddon-3.0.lua:440: Hook = <function> @ Ace3\AceHook-3.0\AceHook-3.0.lua:277: enabledState = true Hook -

    Even installed Libsink2.0 as standalone, still erroring.

  • Avatar of Sorha2 Sorha2 Nov 22, 2010 at 00:38 UTC - 0 likes

    I can try, though implementing things is generally a case of 10000 /rl's to find out where I forgot a comma :P
    Tossing up between having another minion like the quest timers one vs just inserting them above/below any quests in the log.

    From what I can tell its just a matter of:
    Get the num of auto quests
    for each auto quest
    get quest information using the auto quests questid
    display shiny like

    The animations/pretty stuff would take a bit though.

    Last edited Nov 22, 2010 by Sorha2


Date created
Oct 30, 2010
Last update
Sep 19, 2016
Development stage
All Rights Reserved
Curse link
Recent files
  • A: r188 for 7.0.3 Sep 19, 2016
  • A: r187 for 7.0.3 Sep 16, 2016
  • R: v1.5.0.0 for 7.0.3 Sep 12, 2016
  • A: r185 for 7.0.3 Sep 12, 2016
  • A: r184 for 7.0.3 Sep 07, 2016