QuestForever - quests on your map while you level (a ForeverUI module)
=====================================================================

"!" where you can pick a quest up, "?" where you hand one in, and dots where
the mobs, items and objects for your quests are - on the world map and the
minimap. Click any of them and the waypoint arrow points there.

Only what fits the character in front of you is shown: your faction, race
and class, quests you can take at your level, not done already, not in your
log, and with the quests before them done. What the game knows live (your
quest log, which quests are complete) always comes from the game.

HOW TO USE IT
  It comes with ForeverUI and is switched on or off from ForeverUI: the
  first-time setup asks "Levelling?", and the QuestForever page near the top
  of the ForeverUI options has the switch and the settings.
    /fui qf          turn it on or off
    /fui qf options  open its page
  This folder loads only when it is switched on, so leaving it off costs
  nothing.

  Without ForeverUI it runs on its own and starts at login:
    /qf          turn it on or off
    /qf export   the places it learned (see below)

WHAT IT SHOWS
  "!"  quests to pick up - one per quest giver, the tooltip lists them all
  "?"  where to hand in a finished quest
  dots where the mobs, items and objects for your quests are; a finished
       objective's dots go away, and the tooltip shows your progress
  a note icon where an item that starts a quest drops
  small grey dots: the route an escort or patrolling target walks

  Hover a mob, NPC or object in the world: which of your quests it is for
  and your progress. Hover a quest giver: the quests they have for you.
  A pin's tooltip lists the quest's steps in plain words ("Kill ...",
  "Loot ... from ...", "Use ...", "Go to: ...") with the done ones ticked.
  In ForeverUI's quest list, click a quest and the arrow points to its next
  step (nearest objective, or the hand-in when it's done).

IT LEARNS
  Many quests new in Forever have no known quest giver yet. When you pick one
  up (or hand one in) and the data has no place for it, QuestForever
  remembers where you were and who gave it to you, and draws it from then on.
  Share what it found - ForeverUI: QuestForever page > "Share what it found"
  or /fui qf export; on its own: /qf export - and post the text as a comment
  on the CurseForge page. The next data update puts it on everyone's map.

WHERE THE QUEST DATA COMES FROM
  Data.lua is generated by tools/build_questdata.py from a collection made
  for WoW: Forever 1.60.1. Its sources:
    - QuestieDB, the 'forever' branch (github.com/Questie/QuestieDB):
      quests, NPCs, objects and items with coordinates on Forever's maps.
      (QuestieDB carries no licence file of its own.)
    - forever-guide-mate (github.com/TylerAkins/forever-guide-mate, GPL-3.0):
      quest pick-up, hand-in and objective points, including Zephras Isle.
    - Wowhead's WoW: Forever quest list (quest names and levels).
  Thank you to the Questie team and to Tyler Akins. Anyone who wants their
  data taken out: say so on the CurseForge page and it will be.

  Quests new in Forever that none of these sources place yet will not show
  until the data catches up.

  Dungeons.lua (the Dungeons tab: each dungeon's entrance and its quests) is
  generated by tools/build_dungeons.lua from QuestieDB's Forever zone and
  quest data (support/Forever/Zones, data/Forever/foreverQuestDB.lua), which
  came from Questie (GPL-3.0). The list of dungeons itself, their names and
  level ranges, comes from the game's own group finder at run time. Forever's
  new dungeons have no entrance or quests in it yet.

  Loot.lua (each boss's drops, and "Drops from" on item tooltips) is
  generated by tools/build_lootdata.py from QuestieDB's Forever item and NPC
  data (data/Forever/foreverItemDB.lua, foreverNpcDB.lua): which NPCs drop
  each item, kept to bosses and to gear. Item names, icons and quality shown
  in game are the game's own. Raids are partial, and Forever's new dungeons
  have no loot in it yet.
