Quantcast
Download
(364 Kb)
Download
Updated: 07/07/20 06:55 PM
Compatibility:
Greymoor (6.0.5)
Updated:07/07/20 06:55 PM
Created:05/17/20 02:16 AM
Monthly downloads:92,062
Total downloads:208,487
Favorites:143
MD5:
Categories:Map, Coords, Compasses, Libraries
6.0.5
LibQuestData  Updated less than 3 days ago!  Popular! (More than 5000 hits)
Version: 1.93
by: Sharlikran [More]
Major Change

Mod name change because there apparently is a mod called Ravalox' Quest Tracker that had a file named LibQuestInfo.lua included with it as an embedded library.

LibQuestData

While updating Quest Map and trying to use some of the same data with other mods that show quest information I realized it was too much work to update more then one mod. For that reason I created LibQuestData.

It contains all of the currently available (by user submission) data from Quest Map and some information from Destinations. The data is incomplete and I would appreciate user submissions.

Current Features:
- Provide mod authors with X,Y locations for placing a pin on the Map (LIBGPS Data not collected at this time use local_x , local_y only! Needs more time for data to be collected.)
- Built in data collection for quest information not currently in data base

At the bottom of the page is a list of Zones that have had their quest data verified.

Required

LibGPS - LibGPS
NOTE LibGPS Requires: LibMapPing, LibDebugLogger, LibChatMessage so be sure to read the authors description page.
LibMapPins - LibMapPins

Using LibQuestData with your addon: Include this line in your addon manifest:
Code:
## DependsOn:  LibQuestData
Reference to the library using:
Lua Code:
  1. local LQD = LibQuestData


Lua Code:
  1. lib:get_quest_giver(id, lang)
  2. -- returns: Quest Giver Name; type string

Important: This mod is brand new and I have not had time to update X, Y coordinates with user data for LibGPS. Use local_x, local_y.

Lua Code:
  1. lib:get_quest_list(zone)
  2. -- returns: all quest X, Y coordinates and Quest ID; table
  3.  
  4. lib.quest_map_pin_index = {
  5.     local_x     =    1, -- GetMapPlayerPosition() << -10 = Undefined >>
  6.     local_y     =    2, -- GetMapPlayerPosition() << -10 = Undefined >>
  7.     global_x    =    3, -- LocalToGlobal(GetMapPlayerPosition()) << -10 = Undefined >>
  8.     global_y    =    4, -- LocalToGlobal(GetMapPlayerPosition()) << -10 = Undefined >>
  9.     quest_id    =    5, -- Number index of quest name i.e. 6404 for "The Dragonguard"
  10.     world_x     =    6, -- WorldX 3D Location << -10 = Undefined >>
  11.     world_y     =    7, -- WorldY 3D Location << -10 = Undefined >>
  12.     world_z     =    8, -- WorldZ 3D Location << -10 = Undefined >>
  13.     quest_giver =    9, -- Arbitrary number pointing to an NPC Name 81004, "Abnur Tharn"
  14. }

Lua Code:
  1. lib:get_quest_name(id, lang)
  2. -- returns: Quest Name; type string

Lua Code:
  1. lib:get_questids_table(name, lang)
  2. -- returns: Quest IDs; type table
  3. -- {6404, }
  4. -- {5079, 5749, },

NOTE: Multiple ID numbers means there are multiple quests with the same name.

Use: Drawing a pin with a different color if the player has started the
quest and has not finished it yet. Loop over the table.

Example:
Lua Code:
  1. ids = lib:get_questids_table(name, lang)
  2. for _, id in ipairs(ids) do
  3.     started_quests[id] = true
  4. end

Lua Code:
  1. lib:build_questid_table(lang)
  2. -- specialized use: builds a table of Quest IDs with the index being the
  3. -- Quest Name. LibQuestData uses this to return a table of quest IDs using
  4. -- the quest name lib:get_questids_table(id, lang).
  5.  
  6. -- LibQuestData only initializes the client language. If additional lookup
  7. -- tables are needed for other languages, call this during your mods
  8. -- initialization phase.

Planed features for Version 2

1:
Lua Code:
  1. -- return additional quest data
  2.  
  3. lib.quest_data_index = {
  4.     quest_name      =    1, -- Number index of quest name i.e. 6404 for "The Dragonguard"
  5.     quest_type      =    2, -- MAIN_STORY, DUNGEON
  6.     quest_repeat    =    3, -- quest_repeat_daily, quest_repeat_not_repeatable = 0, quest_repeat_repeatable
  7.     game_api        =    4, -- 100003 means unverified, 100030 or 100030 means quest data collected from API 100030 or higher
  8.     quest_line      =    5,    -- QuestLine (10000 = not assigned/not verified. 10001 = not part of a quest line/verified)
  9.     quest_number    =    6,    -- Quest Number In QuestLine (10000 = not assigned/not verified)
  10.     quest_series    =    7,    -- None = 0,    Cadwell's Almanac = 1,    Undaunted = 2, AD = 3, DC = 4, EP = 5.
  11. }

2:
Expand built in data collection to update information instead of only collecting new information. Meaning that if there are multiple pins for a quest, duplicate pins close to the player location would be removed in favor of the new location. The auto update would also compare information like quest name, quest giver, quest type, whether or not it is repeatable, and the Game API. Game's API version will mean the quest is still available in the current version.

3:
For avid data collectors and experts a slash command to remove ALL pins on the map prior to accepting a quest in order to clean up duplicate pins. Data would be submitted on GitHub.

GitHub Repo:

LibQuestData

Zone Quests Verified

Khenarthis Roost

Contributions

Polish localization provided by Skrybowie Tamriel (Tamriel scribes)

10 Hours of compatibility testing with over 272 different mods from 2 users

First I would like to thank vecny.samotar and Pyrelle for the zip files of their Addons folders so I could do this testing.

Mods List: link to mods list

Today I tested over 272 different mods trying to create errors when viewing the world map with Quest Map and other mods installed. It took about 10 hours to really go through all of them thoroughly.

Mods from the list you should not install

TreasureMaps - Link provided so there is no confusion with other mods.
HarvestMerge

The above two mods will cause significant errors. HarvestMerge is one of my mods and if I update it for HarvestMap then it would be safe to use it.

Mods from the list that had errors and could not be tested

SorcererHelper - But I was on my Warden at the time
AdvancedMemberTooltip
MultiQuestTrackerRE
pNames - May be old, my have been from embedded libraries, might duplicate functionality from another mod

Mods from the same author

Some mods by the same author may not necessarily work together. For example the mods starting with Notebook from the above list may work together but you will need to be sure you only install versions from the author that he specifies will work together.

For some of Harvens mods in that list they did not cause a conflict with Quest Map or drawing pins. If you load more then one of Harvens mods test them thoroughly and make sure they do not duplicate functionality. They all seem to work fine but using a bunch of them should be expected to have a possible conflict. If you feel the conflict should not occur then contact the author.

Troubleshooting

The environment I chose was one where I installed LibStub and I only used ESOUI mods downloaded with Minion. I did not modify the files in any way. Normally for mods I personally use I have removed LibStub requirements and I do not load LibStub. Since users can not do that I used the versions of mods currently online. All mods were the most current version available.

To start with I enabled Quest Map and Ravalox' Quest Tracker along with their dependencies. There was no error. I did this because it was discovered today that Ravalox' mod had a file named LibQuestInfo.lua with the same library name. This forced me to change the name of my mod to LibQuestData.

From there I just enabled one or two mods at a time and then the libraries as needed. This is the typical way you should test your mods. If you disable libraries like LibMapPins for example, then any mod that requires that will not load. That does not help you narrow down what is causing the issue.

If you do happen to find a conflict then you need to think, is this expected? Out of those 272 mods in the list you notice there were several UI overhauls and MiniMap mods that were bound to cause conflicts. Naturally I had only certain combinations of mods active at various times. However, toward the end I had Bandits UI and Fyrakin's Minimap active to test that possibility.

Should you find a conflict and there is no reasonable explanation then contact the author of the other mod. Meaning not the author of Quest Map or LibQuestData but rather the author of the mod that is conflicting. The author is doing something they shouldn't and their mod needs to be updated.

Overall Findings

Even with various mods installed, from a list of 272 possible mods, there were no errors opening the map and viewing the map pins for Quest Map. I was able to use the map filters for both Destinations and Quest Map to show and hide pins with any of the mods listed in the link to pastebin.

I am sorry if you are experiencing errors but I have been more then thorough you need to reinstall your mods, update your mods, or disable mods until you no longer experience the errors.

Can I post an error if I have one?

Yes feel free to post errors. If I feel I should look at it I will. If it is an error from something similar to what has already been shared then no I will ask you to read this section and do your own troubleshooting.

Pics of my UI at various times during testing

Nobody would ever load over 230 mods at a time. If you do then you are asking for issues and should not be reporting errors. I provide these for posterity. I only redacted some of the guild chat so my guild members are not angry.








v1.93

- Update German client quest names
- Some updates to quest information that determines quest type such as daily or repeatable quests

v1.92

- Remove unused files from manifest files for old data on quest objectives

v1.91

- Hot fix when switching Zones

v1.90

- Added Polish translations provided by Skrybowie Tamriel (Tamriel scribes)
- Automatically remove collected data already in the main database
- Removed certain unneeded data because it was not useful
- Added method to eliminate duplicate pins from some areas (Work in progress)

v1.89

- Address possible indexing issue for zones and subzones and how they are fed to the main mod

v1.88

- Mod name change because there apparently is a mod called Ravalox' Quest Tracker that had a file named LibQuestInfo.lua included with it as an embedded library.
- Data restructuring for upcoming changes to Quest Map and progression to LibQuestData 2.0

v1.87

- More attempts to address possible attempts to index nil values

v1.86

- Side quests for Blackreack verified

v1.85

- Slight update to quest givers for Blackreack

v1.84

- Verified rough draft for Blackreach
- Added additional translations for quest names

v1.83

- Verified Western Skyrim

v1.82

- Rough draft for Greymoor

v1.81

- fix for 'LibQuestInfo_Scan.lua:291: attempt to index a nil value

v1.8
- More attempts to resolve LibQuestInfo_Scan.lua:39: in function 'get_measurement_sv'

v1.7

- fix for 'lib:build_objectiveid_table' in function 'OnPlayerActivated'
- fix for: LibQuestInfo_Scan.lua:34: attempt to index a nil value

v1.6

- Improved data collection. Quests are now removed after removing a quest or completing it.
- Improved data reporting. Most data is now formatted how it is needed for quest map.
- Added additional quest data from Necropsi

v1.5

- Added additional data from Necropsi

v1.4

- New data from MikeZeDev

v1.3

- New data from Necropsi, and Gimplekin

v1.2

- Address issue with quests unrelated to Clockwork City
- Eliminate pins for some quests that appeared 3 or more times

v1.1

- Fix for error: LibQuestInfo_Scan.lua:145: in function 'OnQuestRemoved'
Optional Files (0)


Archived Files (21)
File Name
Version
Size
Uploader
Date
1.92
361kB
Sharlikran
07/04/20 10:05 PM
1.91
357kB
Sharlikran
07/02/20 07:13 PM
1.90
356kB
Sharlikran
07/02/20 01:54 PM
1.89
312kB
Sharlikran
06/14/20 09:12 AM
1.88
309kB
Sharlikran
06/13/20 02:08 PM
1.87
296kB
Sharlikran
06/03/20 07:21 AM
1.86
295kB
Sharlikran
05/30/20 12:06 PM
1.85
295kB
Sharlikran
05/29/20 08:02 AM
1.84
294kB
Sharlikran
05/28/20 10:19 PM
1.83
290kB
Sharlikran
05/27/20 10:21 PM
1.82
289kB
Sharlikran
05/26/20 02:15 AM
1.81
283kB
Sharlikran
05/24/20 04:59 AM
1.8
281kB
Sharlikran
05/23/20 11:35 AM
1.7
281kB
Sharlikran
05/23/20 07:35 AM
1.6
277kB
Sharlikran
05/22/20 08:55 PM
1.5
269kB
Sharlikran
05/20/20 09:49 PM
1.4
270kB
Sharlikran
05/20/20 04:56 AM
1.3
268kB
Sharlikran
05/19/20 12:51 AM
1.2
253kB
Sharlikran
05/18/20 10:33 AM
1.1
258kB
Sharlikran
05/17/20 06:38 PM
1.0
258kB
Sharlikran
05/17/20 02:16 AM


Post A Reply Comment Options
Unread 05/23/20, 08:19 AM  
FWSWBN
 
FWSWBN's Avatar

Forum posts: 17
File comments: 390
Uploads: 0
Re: Re: Pb with french version after 05/23/20 update

Originally Posted by Sharlikran
hopefully the changes I made will address that issue. Please let me know.
No errors
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 08:06 AM  
Sharlikran
 
Sharlikran's Avatar
AddOn Author - Click to view AddOns

Forum posts: 102
File comments: 620
Uploads: 7
Re: UI error: attempt to index nil value

Originally Posted by SteveS
<<image>>
Originally Posted by MadDragon
Getting several quest updates where I'm getting this. Usually when getting a new quest.
(version 1.6 updated 22 May 2020)

user:/AddOns/LibQuestInfo/LibQuestInfo_Scan.lua:34: in function 'get_measurement_sv'
This should be fixed. However, if you continue to get this error please don't delete the "LibQuestInfo.lua" file in your SavedVariables folder. Would you kindly upload it to my GitHub first? That way I can attempt to see why there is still an error after the update.

Link to GitHub Issues Tracker: Click this link

If all goes well you will not have to upload any files to GitHub. Hopefully the changes will prevent this paticular error.

If you have more errors let me know. Thanks for reporting this.
__________________
Admin for TES5Edit, occasional LOOT masterlist contributor, and Wrye Bash contributor. I also maintain special Fallout 3 and Fallout NV versions of Wrye Flash.
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 07:59 AM  
Sharlikran
 
Sharlikran's Avatar
AddOn Author - Click to view AddOns

Forum posts: 102
File comments: 620
Uploads: 7
Re: Error

Originally Posted by SteveS
<<image>>
Thank you for the report but I would not have been able to read that. You should be able to select and copy paste the text for any future errors. That would help if your error had been different. Luckily MadDragon had your same error.
__________________
Admin for TES5Edit, occasional LOOT masterlist contributor, and Wrye Bash contributor. I also maintain special Fallout 3 and Fallout NV versions of Wrye Flash.
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 07:56 AM  
Sharlikran
 
Sharlikran's Avatar
AddOn Author - Click to view AddOns

Forum posts: 102
File comments: 620
Uploads: 7
Re: Pb with french version after 05/23/20 update

Originally Posted by Jafford
Hi guys,

I have the Following problem since the last update (05/23/20):
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:192: in function 'lib:build_objectiveid_table'

Thanks for your support
Originally Posted by Tiefgrau
I use version 1.6
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:192: in function 'lib:build_objectiveid_table'
Originally Posted by FWSWBN
After latests update
Originally Posted by Jojoeso
Same issue
Jojoeso, FWSWBN, Tiefgrau, Jafford for your errors, hopefully the changes I made will address that issue. Please let me know.
__________________
Admin for TES5Edit, occasional LOOT masterlist contributor, and Wrye Bash contributor. I also maintain special Fallout 3 and Fallout NV versions of Wrye Flash.
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 03:20 AM  
Jojoeso
 
Jojoeso's Avatar

Forum posts: 0
File comments: 14
Uploads: 0
Originally Posted by FWSWBN
After latests update
Same issue
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 02:58 AM  
FWSWBN
 
FWSWBN's Avatar

Forum posts: 17
File comments: 390
Uploads: 0
bad argument #1 to 'pairs' (table/struct expected, got nil)
stack traceback:
[C]: in function 'pairs'
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:192: in function 'lib:build_objectiveid_table'
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:259: in function 'OnPlayerActivated'
After latests update
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 02:27 AM  
SteveS
 
SteveS's Avatar

Forum posts: 3
File comments: 36
Uploads: 0
Error

Report comment to moderator  
Reply With Quote
Unread 05/23/20, 02:02 AM  
Tiefgrau

Forum posts: 0
File comments: 7
Uploads: 0
I use version 1.6

Code:
bad argument #1 to 'pairs' (table/struct expected, got nil)
stack traceback:
[C]: in function 'pairs'
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:192: in function 'lib:build_objectiveid_table'
<Locals> self = [table:1]{client_lang = "de"}, lang = "de", lang = "de", built_table = [table:2]{} </Locals>
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:259: in function 'OnPlayerActivated'
<Locals> eventCode = 589824 </Locals>
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 02:02 AM  
MadDragon

Forum posts: 3
File comments: 40
Uploads: 0
UI error: attempt to index nil value

Getting several quest updates where I'm getting this. Usually when getting a new quest.
(version 1.6 updated 22 May 2020)

user:/AddOns/LibQuestInfo/LibQuestInfo_Scan.lua:34: attempt to index a nil value
stack traceback:
user:/AddOns/LibQuestInfo/LibQuestInfo_Scan.lua:34: in function 'get_measurement_sv'
<Locals> zone = "Art/maps/darkbrotherhood/anvil..." </Locals>|r
user:/AddOns/LibQuestInfo/LibQuestInfo_Scan.lua:130: in function 'OnQuestAdded'
<Locals> eventCode = 131079, journalIndex = 3, questName = "Signed in Blood", objectiveName = "", quest_type = 3, repeat_type = 0, quest_id = -1, zone = "darkbrotherhood/anvilcity_base...", normalizedX = 0.24030131101608, normalizedY = 0.68440783023834, gpsx = 0.32245400549379, gpsy = 0.579802804425, zoneMapIndex = 29, measurement = [table:1]{scaleX = 0.022621601525426, offsetY = 0.564320407392, offsetX = 0.31701800498995, id = "Art/maps/darkbrotherhood/anvil...", mapIndex = 29, zoneId = 823, scaleY = 0.022621595412783}, quest = [table:2]{y = 0.68440783023834, name = "Signed in Blood", objective = "", x = 0.24030131101608, api = 100030, quest_type = 3, questID = -1, gpsx = 0.32245400549379, repeat_type = 0, giver = "Speaker Terenus", lang = "en", gpsy = 0.579802804425}, measurement_info = [table:3]{scaleX = 0.022621601525426, offsetY = 0.564320407392, mapIndex = 29, zoneId = 823, offsetX = 0.31701800498995, scaleY = 0.022621595412783} </Locals>
Last edited by MadDragon : 05/23/20 at 02:03 AM.
Report comment to moderator  
Reply With Quote
Unread 05/23/20, 02:00 AM  
Jafford

Forum posts: 0
File comments: 2
Uploads: 0
Pb with french version after 05/23/20 update

Hi guys,

I have the Following pb since the last update (05/23/20):
bad argument #1 to 'pairs' (table/struct expected, got nil)
stack traceback:
[C]: in function 'pairs'
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:192: in function 'lib:build_objectiveid_table'
|caaaaaa<Locals> self = [table:1]{client_lang = "fr"}, lang = "fr", lang = "fr", built_table = [table:2]{} </Locals>|r
user:/AddOns/LibQuestInfo/LibQuestInfo.lua:259: in function 'OnPlayerActivated'
|caaaaaa<Locals> eventCode = 589824 </Locals>
Thanks for your support
Report comment to moderator  
Reply With Quote
Unread 05/22/20, 06:28 PM  
Kyoma
AddOn Author - Click to view AddOns

Forum posts: 121
File comments: 303
Uploads: 10
Originally Posted by F-Lambda
There's another library that also provides quest data, LibUespQuestData. I don't know how the databases compare.
It does not provide any kind of coordinates for quest givers, just the various info types of quests.
Last edited by Kyoma : 05/22/20 at 06:57 PM.
Report comment to moderator  
Reply With Quote
Unread 05/22/20, 04:58 PM  
F-Lambda

Forum posts: 1
File comments: 65
Uploads: 0
There's another library that also provides quest data, LibUespQuestData. I don't know how the databases compare.
Report comment to moderator  
Reply With Quote
Unread 05/17/20, 06:39 PM  
Sharlikran
 
Sharlikran's Avatar
AddOn Author - Click to view AddOns

Forum posts: 102
File comments: 620
Uploads: 7
Re: Error after doing World boss daily in Rimmen

Originally Posted by Cambio
bad argument #1 to 'pairs' (table/struct expected, got nil)
stack traceback:
[C]: in function 'pairs'
user:/AddOns/LibQuestInfo/LibQuestInfo_Scan.lua:145: in function 'OnQuestRemoved'
|caaaaaa<Locals> eventCode = 131093, isCompleted = T, journalIndex = 13, questName = "The Traders' Terror", zoneIndex = 680, poiIndex = 294967291, questID = 6378 </Locals>|r
Should be fixed in v1.1 thank you for reporting that.
__________________
Admin for TES5Edit, occasional LOOT masterlist contributor, and Wrye Bash contributor. I also maintain special Fallout 3 and Fallout NV versions of Wrye Flash.
Report comment to moderator  
Reply With Quote
Unread 05/17/20, 12:06 PM  
Cambio

Forum posts: 0
File comments: 1
Uploads: 0
Error after doing World boss daily in Rimmen

bad argument #1 to 'pairs' (table/struct expected, got nil)
stack traceback:
[C]: in function 'pairs'
user:/AddOns/LibQuestInfo/LibQuestInfo_Scan.lua:145: in function 'OnQuestRemoved'
|caaaaaa<Locals> eventCode = 131093, isCompleted = T, journalIndex = 13, questName = "The Traders' Terror", zoneIndex = 680, poiIndex = 294967291, questID = 6378 </Locals>|r
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: