Quantcast
Download
(56 Kb)
Download
Updated: 02/13/18 12:56 AM
Pictures
File Info
Compatibility:
Dragon Bones (3.3)
Clockwork City (3.2)
Horns of the Reach (3.1)
Morrowind (3.0)
Homestead (2.7)
One Tamriel (2.6)
Shadows of the Hist (2.5)
Dark Brotherhood (2.4)
Updated:02/13/18 12:56 AM
Created:04/10/14 02:17 AM
Monthly downloads:491
Total downloads:54,837
Favorites:261
MD5:
Categories:Miscellaneous, RolePlay, Utility Mods
Librarian Book Manager  Popular! (More than 5000 hits)
Version: 2.0
by: calia1120, Flamage
Librarian records every book your character reads in-game and keeps a list of when it was found and whether you have marked it as read, allowing you to continue questing (and not hold up other players) while being confident you won't forget to read anything later.

Any suggestions, bugs or general discussion about the addon can be posted in the comments tab above, in my author portal (button on the right) or in this forum thread.

Features:
- Ability to mark books as read / unread. Books are marked as unread initially so you can feel free to skip reading while questing and know that your book will be easily found later.
- When reading a book, an is shown for books not marked as read (can be disabled in the settings)
- Displays the books in the default book reader interface.
- Imports books you have already read from the Lore Library / Eidetic Memory.
- Records the time each book was first discovered.
- Optionally view books found on your other characters.
- Sorting by unread / read status, time discovered, book title and word count.
- Full text search of all the books in your collection.
- Displays a count of the total number of books found so far and the number that are unread.
- Key binding to open the Librarian window (and a bonus keybind for /reloadUI).
- Optional reminder to /reloadui (and force a save of Librarian data) when a certain number of new books have been discovered, to help prevent loss of data if the client crashes.

How to use:
- Bind a key for Librarian in the Controls, Keybinds settings menu, or type /librarian into the chat window to open Librarian.
- Click a book or press the action button ('E' by default) while hovering over a title to read that book.
- Hover over a title and press the secondary action button ('R' by default) to toggle the unread state of the highlighted book. You can also toggle the unread state of a book while reading it.
- Click on the column headers to sort by that field. Click again to sort in descending order.

SavedVariables warning:
Librarian relies on SavedVariables to store information about the books you have found. If this file is lost or corrupted, that information will be lost. Therefore, it is important to backup your saved variables regularly. This is quite simple:
1 - Go to your SavedVariables folder (on windows, this can be found at MyDocuments\Elder Scrolls Online\live\SavedVariables.
2 - Create a folder called Backup.
3 - Select Librarian.lua and right click, select copy.
4 - Open the Backup folder, and paste the file.

Known issues:
- Books with identical names are not handled properly and will be treated as the same book.
2.0 (2/12/18)
- Updated API for Dragon Bones (100022)
- Fixed issue with ZOS function LoreReader, and new issue with ZO_SceneManager. Currently closes back to
UI and not Librarian list, will update that soon.

1.9 (9/10/17)
- Updated API for Horns Of The Reach (100020)
- Updated LAM to 2.0 r24
- Fixed issue with ZOS function LoreReader

1.8 (6/10/17)
- Updated API for Morrowind (100019)

1.7 ~ 2/5/17
- Updated LAM to 2.0 r23
- Updated to API 18 (Homestead)

1.6.3 ~ 2016-09-10
- Import feature working much better thanks some input from Votan (Thank You!)

1.6.2 ~ 2016-09-10
- Updated to LibAddonMenu 2.0 r17
- Updated for Shadows of the Hist, API 100016, also confirmed working for 100017
TODO: Looking at building language localizations and some category filters for book types. Also looking at improving the import function.

1.6.1
- Added License for LibAddonMenu

1.6.0
- Updated TOC for Tamriel Unlimited
- Updated LibAddonMenu

1.5.0
- Updated TOC for patch 1.5
- Updated LibAddonMenu 2.0

1.4.0
- Updated TOC for patch 1.4

1.2.6 2014-9-5
- Added an option to disable the character spin when opening the Librarian window.
- Added a shortcut button to the setting window in the top right of Librarian.
- Compatibility fixes for version 1.4 from the PTS.

1.2.5 2014-8-18
- Exiting the book reader interface now returns to Librarian rather than the base scene. Also fixes this behaviour with books opened from the inventory and the lore library.

1.2.4 2014-8-15
- Modified the SavedVariable import process to fix data for all accounts, not just the currently logged-in account.

1.2.3 2014-8-6
- Added missing references to LibAddonMenu.lua files that was causing an error.

1.2.2 2014-8-6
- Fixed a bug where full-text search would show an error if a book was missing its body.

1.2.1 2014-8-5
- Fixed a error caused by a change to the Scene Manager in 1.3
- Added a function to migrate data from the "empty" account that was created by the GetDisplayName() bug in 1.2.3

1.2.0 2014-6-25
- Updated to LibAddonMenu 2.0.
- Added a SavedVariable backup reminder.

1.1.2 2014-6-24
- Fixed a bug with the "Waterlogged Journal" from Craglorn that was caused a user to lose all their data. A more robust fix will be deployed later.

1.1.1 2014-6-14
- Temporarily disabled integration with the LoreLibrary which was causing connection time-outs for some users. This feature will be re-enabled when a fix for it is found.

1.1.0 2014-5-23
- Update API version to 100004. Addon appears to be stable, so I have moved to version 1.1.0.

1.0.18 2014-5-8
- Fixed a bug with upgrading old databases that would result in an error.

1.0.17 2014-5-7
- Fixed a bug in the settings panel when a newer version of LibAddonMenu was loaded.
- Updated the bundled version of LibAddonMenu to 1.0r7

1.0.16 2014-5-5
- Added a new optional reloadui reminder feature. By default, after finding 5 new books the game reminds you in a chat message to reloadui so that you do not lose much progress in the case of a crash.
- Fixed a bug with non-english clients that was preventing keybindings from working.
- Added the current version number to the UI.

1.0.15 2014-4-30
- Fixed an error that occurred when viewing a book that was not already in the collection.

1.0.14 2014-4-30
- Added a new unread indicator to the book reader. The indicator can be disabled in the settings.

1.0.13 2014-4-30
- Added the ability to toggle a book's unread status while reading it.

1.0.12 2014-4-29
- Added full-text search feature.

1.0.11 2014-4-28
- Added the LoreLibrary import feature.
- Fixed a error when changing the time display setting.

1.0.10 2014-4-28
- Fixed an error that was occurring when upgrading users of an older version of Librarian. Sorry I missed that!

1.0.9 2014-4-25
- From user feedback, performance looks to have been fixed! Moving back onto features.
- Added an unread book counter

1.0.8 2014-4-24
- Completely revamped the code to use ZO_SortFilterList as the basis of the Librarian book list. Hopefully performance is significantly improved, both for scrolling, and loading / exiting the game.

1.0.7 2014-4-21
- Added a setting to specify whether or not to display alerts in chat and/or as a banner-type alert.

1.0.6 2014-4-17
- Fixed a bug with the keybinding unread / read display when a book is highlighted.
- Replaced the chat alert when finding a new book with an alert similar to when finding a new lore book.

1.0.5 2014-4-17
- Fixed a bug with toggling the read / unread status of books.

1.0.4 2014-4-17
- Account-wide book access. There is a checkbox available at the bottom of the Librarian interface to toggle the showing of books seen across any of your characters. Initially, you will need to log in each character once to move their data to the account-wide Library.
- Big changes on the data storage side. Actual book data is stored in an account-wide variable, and only the time found is stored per-character.

1.0.3 2014-4-15
- Added a settings screen which can be accessed from the standard settings menu.
- Added a time format setting so the user can choose between 12 and 24 hour time. This setting should default to 12 hour for english and 24 hour for other languages, which is the same logic the game itself uses.
- Fixed the bug where times were always being displayed as "P.M."

1.0.2 2014-4-14
- Added a book count header.
- Fixed a bug with highlighting of sort headers.
- Known issue: book found times are still inconsistent.

1.0.1 2014-4-13
- Added a wordcount field.
Archived Files (38)
File Name
Version
Size
Author
Date
1.9
55kB
calia1120
09/10/17 08:59 PM
1.8
53kB
calia1120
06/11/17 01:02 AM
1.7.0
53kB
calia1120
02/05/17 03:00 AM
1.6.3
41kB
calia1120
09/10/16 05:51 AM
1.6.2
41kB
calia1120
09/10/16 02:09 AM
1.6.1
38kB
calia1120
03/29/15 03:59 PM
1.6.0
34kB
Flamage
03/22/15 09:38 PM
1.5.0
34kB
Flamage
11/05/14 03:47 PM
1.4.0
34kB
Flamage
09/15/14 08:58 PM
1.2.6
34kB
Flamage
09/04/14 10:57 AM
1.2.5
33kB
Flamage
08/17/14 04:44 PM
1.2.4
33kB
Flamage
08/14/14 04:56 PM
1.2.3
33kB
Flamage
08/05/14 05:52 PM
1.2.2
32kB
Flamage
08/05/14 04:22 PM
1.2.1
32kB
Flamage
08/04/14 05:01 PM
1.2.0
31kB
Flamage
06/26/14 05:22 AM
1.1.3
14kB
Flamage
06/25/14 04:29 AM
1.1.2
14kB
Flamage
06/24/14 04:49 AM
1.1.0
14kB
Flamage
06/13/14 05:32 PM
1.1.0
14kB
Flamage
05/23/14 05:02 AM
1.0.18
14kB
Flamage
05/08/14 01:55 AM
1.0.17
14kB
Flamage
05/06/14 03:20 PM
1.0.16
13kB
Flamage
05/05/14 05:22 AM
1.0.15
12kB
Flamage
04/30/14 02:23 AM
1.0.12
12kB
Flamage
04/29/14 06:05 PM
1.0.14
12kB
Flamage
04/29/14 04:42 PM
1.0.13
12kB
Flamage
04/29/14 03:49 PM
1.0.12
12kB
Flamage
04/28/14 04:01 PM
1.0.10
11kB
Flamage
04/27/14 03:11 PM
1.0.9
11kB
Flamage
04/24/14 04:19 PM
1.0.7
12kB
Flamage
04/20/14 09:54 PM
1.0.6
11kB
Flamage
04/17/14 07:03 AM
1.0.5
12kB
Flamage
04/16/14 10:57 PM
1.0.4
11kB
Flamage
04/16/14 03:10 PM
1.0.3
10kB
Flamage
04/14/14 04:16 PM
1.0.2
5kB
Flamage
04/13/14 04:00 PM
1.0.1
5kB
Flamage
04/12/14 07:48 PM
1.0
4kB
Flamage
04/10/14 02:23 AM


Post A Reply Comment Options
Unread 07/08/18, 08:29 AM  
cruisnk

Forum posts: 0
File comments: 1
Uploads: 0
UI error need help

I am getting a UI error:

EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:1461: attempt to index a nil value
stack traceback:
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:1461: in function 'CenterScreenAnnounce:CallExpiringCallback'
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:621: in function 'ZO_CenterScreenAnnouncementLargeLine.ExpiringCallback'
[C]: in function 'PlayFromStart'
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:635: in function 'ZO_CenterScreenAnnouncementLargeLine:PlayWipeAnimation'
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:1381: in function 'setupFunction'
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:1574: in function 'CenterScreenAnnounceisplayMessage'
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:1289: in function 'CenterScreenAnnounce:TryDisplayingNextQueuedMessage'
EsoUI/Ingame/CenterScreenAnnounce/CenterScreenAnnounce.lua:871: in function 'OnCenterScreenAnnounceUpdate'

please help
Report comment to moderator  
Reply With Quote
Unread 04/05/18, 04:03 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Pocket Apocrypha

I didn't use the original Librarian name as... well, it just felt uncomfortable to do so. It was barely the same mod and I'd rather just leave this one here as it is, for those who wish to keep their titles-based addon.

For those who've been using my Librarian builds, here? Yes, you absolutely can convert over to the new addon without losing anything! Just delete Librarian from your addons folder, drop in Pocket Apocrypha, then run the backup utility (just in case), then the database update utility. It'll do all the work for you.
Report comment to moderator  
Reply With Quote
Unread 04/05/18, 02:04 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
@josh

Yeeeah...

Well, then let this update be my last in this comments section.

I'll update here with news, soon.
Last edited by Werewolf Finds Dragon : 04/05/18 at 02:05 AM.
Report comment to moderator  
Reply With Quote
Unread 04/05/18, 12:08 AM  
joshmiller83
AddOn Super User
 
joshmiller83's Avatar
Premium Member

Forum posts: 70
File comments: 245
Uploads: 0
Probably a good idea! I have talked to calia several times and she has yet to respond here. So upload it as "Librarian"? since that is the folder name? I never understood the Librarian Book Manager when the folder is called Librarian but I think that was how it was designed WAY back with the original author.

Originally Posted by Werewolf Finds Dragon
Considering a lot of people aren't seeing this and will still be drawing downloads through Minion, I'm wondering if I should finally bite the bullet and upload this to ESOUI. Just under a different name (so I'm not appropriating that), and linking back here so that people can fav this mod instead. It's been two months since the last official update and this is something that's been nagging at the back of my mind for a while.
Report comment to moderator  
Reply With Quote
Unread 04/04/18, 09:36 PM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Considering a lot of people aren't seeing this and will still be drawing downloads through Minion, I'm wondering if I should finally bite the bullet and upload this to ESOUI. Just under a different name (so I'm not appropriating that), and linking back here so that people can fav this mod instead. It's been two months since the last official update and this is something that's been nagging at the back of my mind for a while.
Report comment to moderator  
Reply With Quote
Unread 04/04/18, 03:29 PM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Update

What's new?
  • Fixed: Search contents checkbox wasn't correctly showing its state on load.
  • More code cleanup.
Report comment to moderator  
Reply With Quote
Unread 04/03/18, 12:36 PM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Update!

What's new?

Nothing too exciting this time, just a bit of necessary code cleanup. I want the Librarian.lua to be as readable as possible without even requiring comments, that should make it easier for others to maintain should I ever not be present to maintain it (I won't be playing ESO forever).

Other than that, the 'Show Books for All Characters' thing is properly capitalised. I can't tell you how much that was bothering my more obsessive inclinations.
Report comment to moderator  
Reply With Quote
Unread 04/02/18, 02:36 PM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
A Wild Update Appears!

What's new?

Yeah, I work fast.
  • Book contents are now searchable again! You can thank Nudel for that, as nosing around in other mods helped me figure out what was causing the crash.
  • Even better, it shouldn't crash! Please tell me if it crashes you, I ran extensive tests to try to get it to crash me and I couldn't, but you never know...
  • Also better, it's now a toggle! So you can switch between searching just book titles or book titles and contents for that authentic lore hound experience you so crave.
  • And code clean up on top of that which makes the Librarian.lua an enjoyable thing to read.
To Do:
  • Further code cleanup, for example: 'Show Books for All Characters' should be properly capitalised.
  • XML cleanup. I'm going to see if I can wrap my mind around XML enough to make the Librarian UI a little cleaner. XML is really my weakness.
  • Perhaps add a column for the ID of the book. That's a long term goal if I can ever figure out enough about how XML formatting works.
Enjoy!

Edited to correct formatting.
Last edited by Werewolf Finds Dragon : 04/02/18 at 02:43 PM.
Report comment to moderator  
Reply With Quote
Unread 04/02/18, 11:32 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
That's genuinely helpful and I really appreciate it, thank you! I know it's hard to tell on the Internet with so much sarcasm abounds, but I'm being sincere about that and I'll explain why. I've really appreciated your aid thus far in improving Librarian.

Originally Posted by Nudel
The duplicate book in question "Crow and Raven: Three Short Fables" is a pre-launch ooooold issue that is not likely to get 'fixed'. It's actually two different books, one purple Shalidor's Library book (levels up Mages Guild) and one normal Eidetic Memory text (in bookshelves and such).
This helps ease my mind in that I'm right about the nature of that book (that it is a duplicate ZOS accidentally made) and that my solution was the right one. It's likely it'll never get fixed, but it's still better to keep both in the database and show the player only one, just in case, since both books do exist.

Originally Posted by Nudel
As for the Librarian search, that is also a very old issue with Librarian. Having remembered that problem from before, I've actively avoided searching its library. I've been using Votan's Lore Library Search and have never crashed. Maybe you can sift through its code for clues :P
This clears up that it wasn't my changes that made the game crash. I did go back and try out old Librarian just to be sure, and it occurred there for me too but I didn't want to say that because it would feel like I'm going out of my way to berate the old addon. Whilst it has had many, varied problems, the addon itself is still a fantastic idea even if the execution is a little iffy.

This also gives me an avenue of following up regarding how to get the body data searchable, which I also appreciate. I'll get on that and see what I can figure out. Thanks!
Last edited by Werewolf Finds Dragon : 04/02/18 at 11:36 AM.
Report comment to moderator  
Reply With Quote
Unread 04/02/18, 08:18 AM  
Nudel

Forum posts: 0
File comments: 52
Uploads: 0
Hey there,

The duplicate book in question "Crow and Raven: Three Short Fables" is a pre-launch ooooold issue that is not likely to get 'fixed'. It's actually two different books, one purple Shalidor's Library book (levels up Mages Guild) and one normal Eidetic Memory text (in bookshelves and such).

As for the Librarian search, that is also a very old issue with Librarian. Having remembered that problem from before, I've actively avoided searching its library. I've been using Votan's Lore Library Search and have never crashed. Maybe you can sift through its code for clues :P
Report comment to moderator  
Reply With Quote
Unread 03/30/18, 11:22 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Update

What's new?

For now, for your safety, the search has been restricted to book titles. To search book body data as well on every keypress, which includes backspaces, is too much. The game won't allow for it. It can't handle it. And I don't want anyone getting banned.

I swear, maintaining Librarian sometimes feels like walking through a field of landmines.

I know this isn't ideal for everyone, so we're not leaving this here. What needs to happen, though, is for the search to be moved to a more sane system where the search doesn't occur until you hit a search button. No searching on every keypress.

If anyone can show me a UI element or an addon that has a search bar and a search button, where the search doesn't occur until you hit the search button, I'd be hugely appreciative.

Edit: Funny observation/thought -- Even the lore library only searches book titles, not contents.
Last edited by Werewolf Finds Dragon : 03/30/18 at 11:23 AM.
Report comment to moderator  
Reply With Quote
Unread 03/30/18, 10:46 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
I've run into a bit of a wrinkle and I'd be happy to accept advice.

If typing too quickly in the search box, it seems to cause the game to crash. The only way to avoid it, I've found, is to type slower. I don't know whether it's just processing too much information in a search, and the game is objecting. If that's the case, perhaps the search is... unwise. I don't want Librarian to get anyone banned.

I'm halfway to considering pulling the search feature due to this as I can't track down what's causing this issue and it doesn't seem to rear its head anywhere else in Librarian. I'd really appreciate thoughts and opinions on this, thanks!

Edit: After running more tests it looks like it's just too much information processing, the game doesn't like it. If I go with just the title, the game can handle it fine. However, with a lot of books, if the bodies are searched as well (every time a letter is typed) then it's going to do very bad things.

So here's my plan of action (unless someone has a better idea):

1.) Restrict it to just searching titles for now.
2.) Figure out how to add a search button.
3.) Set the search to only run when the search button is pressed (not on every single keypress).

Thoughts and opinions are welcome.
Last edited by Werewolf Finds Dragon : 03/30/18 at 11:09 AM.
Report comment to moderator  
Reply With Quote
Unread 03/30/18, 08:26 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
For those who don't want technical information, skip over this post. You don't need to know or understand this, I just want to 'show my work' so to speak, and provide the users of my version of Librarian with peace of mind that I tend to carefully think everything out. Usually down to the last detail. So if you want to be able to follow my thinking in regards to how I'm maintaining Librarian, read on.

Basically, I just wanted to explain my thinking more on book IDs and dupes.

The Issue

Apparently, sometimes ZOS makes an oops and has two identical books (exactly the same content in regards to title, body text, book medium, and so on) on different IDs. The most likely explanation for this is that someone forgot to check the database before including a book. So this means that Librarian will end up containing duplicates.

Bad Solutions

We can't simply stop Librarian from including dupes. We need to actually bring them into the database but not show them to the player. Why? For the same reason that Librarian updates book information each time you read a book -- ZOS might not keep things the same way, so we need to keep an eye on things to keep our database in line with ZOS' own.

So, consider the following:

ZOS has two identical books. These books are on IDs 123 and 1234. Now, why don't we just delete one of these books? The question is which one? Let's say that we delete the book we found later (1234) and kept the former (123). What if ZOS decides that 123 is the flawed entry?

We can't know which of these IDs ZOS will consider erroneous, we aren't privy to that information.

So if we delete one of those IDs and ZOS decides that they want to delete the other, that's going to cause problems for us.

What we do:

We keep the book on book 123, and delete the book on 1234.

What ZOS does:

They delete the book on 123, and replace it with another book using book ID 123.

What will then happen:

Librarian will update to the correct book on 123 when it next sees that ID and the original book will be lost because we deleted 1234. In this way, we actually lose books.

The Good Solution

Duplicates are kept in the database but not shown to the player. Only one of the two duplicate books is actually shown. The others are recorded but kept out of the player's view. So whilst we may have one (or more, if ZOS really drops the ball!) duplicate of an existing book, we will still only see one unique copy of it in the Librarian UI.

We also check when updating the player with alerts and reminders to see if the book they've just found is a dupe. If it's a dupe we treat it like the other book the player already knows which has the same content. On the user interface side of things, the user will be none the wiser as it'll just look like they found the original book again.

This solution works because...

If ZOS deletes one of the IDs and replaces it, Librarian will just update to accommodate.

If ZOS changes one of the books slightly, Librarian will just update to accommodate.

And so on.

If the title/body are actually different along with the ID, they will -- of course -- be treated as unique books as they aren't identical.

It's not a perfect solution, but it is a very good one and it's the best we're going to get unless ZOS exposes their entire internal book database to us (and that's not going to happen for a vast multitude of reasons). It provides a number of safety nets that -- as I've said -- will allow people to have a very complete Librarian database without errors. Keeping dupes around is part of that.

The Importance of Book IDs

This is exactly why book IDs are so incredibly important. With the wealth of information provided to us by having access to not just titles, but also the book body data and book IDs, we can be certain that we won't ever have to worry about missing out on books due to any concern.

This comes down to: The more information we have, the better things work.

With the way Librarian was before I changed it, it only used book titles as a system of measure. That resulted in all kinds of problems. As some might remember. Essentially, it would miss out on books and lead to all sorts of bad duplicates. There's even a warning about that on the front page. With the way Librarian was before I started maintaining it, there was absolutely no way to have a complete collection, let alone an up-to-date one.

Book IDs also have duplicates too, but because we have book IDs, and titles, and book body data in the cross-referencing mix we're better equipped to figure out what books should be shown when we open Librarian in-game.

My attitude is that it's better to grab as much as possible and then filter it on the fly. It's better to have extraneous information around than to miss out on books entirely.

Reasons for Explanations

Basically, I just wanted to be transparent. I'm putting a lot of thought into this and I wanted to be able to reassure everyone that I'm not half-arsing my efforts.

I initially started working on Librarian due to the medium bug thanks to ZOS adding an extra medium to the medium table to specifically cause errors. I'm not kidding! Here...

[BOOK_MEDIUM_NONE] = {}, -- Intentionally left blank to cause UI errors if referenced.
I sort of understand why they did that but it doesn't strike me as the most intelligent implementation. There are better ways to do that.

Anyway, that got me looking at the Librarian code. Once I did that, it was like opening Pandora's Box, as I saw everything that could (and inevitably would) go wrong with its implementation. Basically, a lot of things could go so very wrong. I began fixing things up for myself and my partner, which lead to a better Librarian experience for us. Naturally, guilt set in... Is it fair to have this and not share it? I can't upload patches to Librarian so I can't do anything that way -- and besides, having to start over isn't the most desirable outcome for people even if it is completely necessary.

And here we are.

Of course, this lead to there being some duplicate books under different book IDs which lead to a new wrinkle. But thanks to having more information available than we did before, we're in a good position to be able to deal with that without this turning very bad.

I think that about covers it.

I'm bad at writing closing paragraphs. Just going to leave it at that.
Report comment to moderator  
Reply With Quote
Unread 03/30/18, 06:44 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Update

What's new?

I stopped dupe books from triggering the new book count, the reload reminder, and the alert. As I said in my last post about this, it might only actually be one book that ZOS actually derped with this, but just in case I'm going to account for it everywhere I can.

My goal with my take on Librarian, after all, is for everyone to have the most complete book collecting experience they can, without flaws. So I want each book in Librarian to be genuinely unique, and at the same time I don't want Librarian to ever accidentally exclude anything. I think that's kind of a promise I made when I started maintaining it, and I've kept it.

I've also cleaned up the code a little more.
Report comment to moderator  
Reply With Quote
Unread 03/29/18, 02:05 AM  
Werewolf Finds Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 105
Uploads: 15
Update

What's new?

I was browsing through the lua source on ESOData today, as I am wont to do, and I realised that the original import function Librarian had (that I cleaned up a lot, but left mostly the same) was... perhaps not of the most efficient implementation. There were functions I could use to have it quickly import books without ridiculously long lockup times or the potential of a permanent lockup. This pleases me.

I temporarily wiped my database to test it and that was the fastest I've seen the import happen, so I'm very happy.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.