Go to Page... |
%AppData%/../Local/Elder Scrolls Online/live/CachedData/GuildHistory
~/Documents/Elder Scrolls Online/live/CachedData/GuildHistory
LibHistoire:OnReady(function(lib) local guildId = GetGuildId(1) local category = GUILD_HISTORY_EVENT_CATEGORY_BANKED_CURRENCY local addonName = "MyAddon" local processor = lib:CreateGuildHistoryProcessor(guildId, category, addonName) if not processor then -- the processor could not be created return end local started = processor:StartIteratingTimeRange(startTime, endTime, function(event) local info = event:GetEventInfo() assert(info.currencyType == CURT_MONEY, "Unsupported currency type") local eventType = info.eventType if eventType == GUILD_HISTORY_BANKED_CURRENCY_EVENT_DEPOSITED then local amount = info.amount local displayName = DecorateDisplayName(info.displayName) ProcessDeposit(guildId, displayName, amount) end end, function(reason) if (reason == LibHistoire.StopReason.ITERATION_COMPLETED) then -- all events in the time range have been processed else -- the iteration has stopped early for some reason and not all events have been processed end end) if not started then -- the processor could not be started end end)
LibHistoire:OnReady(function(lib) local category = GUILD_HISTORY_EVENT_CATEGORY_TRADER local addonName = "MyAddon" local function SetUpListener(guildId) local processor = lib:CreateGuildHistoryProcessor(guildId, category, addonName) if not processor then -- the processor could not be created return end local key = processor:GetKey() local started = processor:StartStreaming(saveData.lastEventId[key], function(event) local info = event:GetEventInfo() if info.eventType == GUILD_HISTORY_TRADER_EVENT_ITEM_SOLD then ProcessItemSold(info) end saveData.lastEventId[key] = info.eventId end) if not started then -- the processor could not be started end end for i = 1, GetNumGuilds() do SetUpListener(GetGuildId(i)) end end)
ConvertArtificialLegacyId64ToEventId
Utility function to convert id64s that have been artificially created by a legacy listener to the new id53 equivalent.Lua Code:
(method) LibHistoire:ConvertArtificialLegacyId64ToEventId(id64: string) -> id53: integer53|nil
Should be used one time only to convert all id64s that have been stored by the addon when switching to the new event processor api, since it's not the fastest operation.
@param id64 — The id64 to convert.
@return id53 — The converted id53 or nil if the id64 cannot be converted.
CreateGuildHistoryListener(deprecated)
This method will be removed in a future version. Use CreateGuildHistoryProcessor instead.
Creates a legacy listener object which emulates the old guild history api. See guildHistoryCache/GuildHistoryLegacyEventListener.lua for details.Lua Code:
(method) LibHistoire:CreateGuildHistoryListener(guildId: integer, category: integer) -> listener: GuildHistoryLegacyEventListener|nil
It's highly recommended to transition to CreateGuildHistoryProcessor instead, to take better advantage of the new history api.
@param guildId — The id of the guild to listen to.
@param category — The legacy category to listen to. One of the GUILD_HISTORY_* constants. See guildHistoryCache/compatibility.lua for details.
@return listener — The created listener object or nil if no caches were found for the provided guildId and category.
See:
CreateGuildHistoryProcessor
Creates a processor object which can be configured before it starts sending history events to an addon. See guildHistoryCache/GuildHistoryEventProcessor.lua for details.Lua Code:
(method) LibHistoire:CreateGuildHistoryProcessor(guildId: integer, category: GuildHistoryEventCategory, addonName: string) -> processor: GuildHistoryEventProcessor|nil
@param guildId — The id of the guild to process history events for.
@param category — The category to process history events for.
@param addonName — The name of the addon that is processing the events. This is used to allow users to identify addons that are registered to a category, as well as to provide better logging.
@return processor — The created processor object or nil if no caches were found for the provided guildId and category.
See:
IsReady
This function can be used to check if the library is ready to be used. It will return true after the INITIALIZED callback has been fired.Lua Code:
(method) LibHistoire:IsReady() -> isReady: boolean
When the library is not ready yet, make sure to register to the INITIALIZED callback to know when it is.
@return isReady — True if the library is ready to be used, false otherwise.
See:
OnReady
A convenience function to execute a callback when the library is ready. When the library is already initialized, the callback will be executed immediately.Lua Code:
(method) LibHistoire:OnReady(callback: fun(lib: LibHistoire))
@param callback — The function to call when the library is ready. It will receive the LibHistoire object as an argument.
See:
RegisterCallback
Register to a callback fired by the library. Usage is the same as with ZO_CallbackObject.RegisterCallback. You can find the list of exposed callbacks in api.luaLua Code:
(method) LibHistoire:RegisterCallback(callbackName: Callbacks, callback: function, ...any)
@param callbackName — One of the exposed callbacks.
@param callback — The function to call when the callback is fired.
See:
GuildHistoryEventProcessor
UnregisterCallback
Unregister from a callback fired by the library. Usage is the same as with ZO_CallbackObject.UnregisterCallback.Lua Code:
(method) LibHistoire:UnregisterCallback(callbackName: Callbacks, callback: function, ...any)
@param callbackName — One of the exposed callbacks.
@param callback — The function to unregister.
See:
GetAddonName
Returns the name of the addon that created the processor.Lua Code:
(method) GuildHistoryEventProcessor:GetAddonName() -> addonName: string
@return addonName — The name of the addon that created the processor.
GetCategory
Returns the category.Lua Code:
(method) GuildHistoryEventProcessor:GetCategory() -> category: GuildHistoryEventCategory
@return category — The event category the processor is listening to.
GetGuildId
Returns the guild id.Lua Code:
(method) GuildHistoryEventProcessor:GetGuildId() -> guildId: integer
@return guildId — The id of the guild the processor is listening to.
GetKey
Returns a key consisting of server, guild id and history category, which can be used to store the last received eventId.Lua Code:
(method) GuildHistoryEventProcessor:GetKey() -> key: string
@return key — The key that identifies the processor.
GetPendingEventMetrics
Returns information about history events that need to be sent to the processor.Lua Code:
(method) GuildHistoryEventProcessor:GetPendingEventMetrics() -> numEventsRemaining: integer 2. processingSpeed: integer 3. timeLeft: integer
@return numEventsRemaining — The amount of queued history events that are currently waiting to be processed by the processor.
@return processingSpeed — The processing speed in events per second (rolling average over 5 seconds).
@return timeLeft — The estimated time in seconds it takes to process the remaining events or -1 if it cannot be estimated.
IsRunning
Returns true while iterating over or listening for events.Lua Code:
(method) GuildHistoryEventProcessor:IsRunning() -> running: boolean
@return running — true if the processor is currently running.
SetAfterEventId
Allows to specify a start condition. The nextEventCallback will only return events which have a higher eventId.Lua Code:
(method) GuildHistoryEventProcessor:SetAfterEventId(eventId: integer53) -> success: boolean
@param eventId — An eventId to start after.
@return success — true if the condition was set successfully, false if the processor is already running.
SetAfterEventTime
Allows to specify a start condition. The nextEventCallback will only receive events after the specified timestamp. Only is considered if no afterEventId has been specified.Lua Code:
(method) GuildHistoryEventProcessor:SetAfterEventTime(eventTime: integer53) -> success: boolean
@param eventTime — A timestamp to start after.
@return success — true if the condition was set successfully, false if the processor is already running.
SetBeforeEventId
Allows to specify an end condition. The nextEventCallback will only return events which have a lower eventId.Lua Code:
(method) GuildHistoryEventProcessor:SetBeforeEventId(eventId: integer53) -> success: boolean
@param eventId — An eventId to end before.
@return success — true if the condition was set successfully, false if the processor is already running.
SetBeforeEventTime
Allows to specify an end condition. The nextEventCallback will only return events which have a lower timestamp. Only is considered if no beforeEventId has been specified.Lua Code:
(method) GuildHistoryEventProcessor:SetBeforeEventTime(eventTime: integer53) -> success: boolean
@param eventTime — A timestamp to end before.
@return success — true if the condition was set successfully, false if the processor is already running.
SetEventCallback
Convenience method to set both callback types at once.Lua Code:
(method) GuildHistoryEventProcessor:SetEventCallback(callback: fun(event: ZO_GuildHistoryEventData_Base)) -> success: boolean
@param callback — The function that will be called for each missed event that was found.
@return success — true if the condition was set successfully, false if the processor is already running.
See:
SetMissedEventCallback
Sets a callback which will get passed events that had not previously been included in the managed range, but are inside the start and end criteria. The order of the events is not guaranteed.Lua Code:
(method) GuildHistoryEventProcessor:SetMissedEventCallback(callback: fun(event: ZO_GuildHistoryEventData_Base)) -> success: boolean
If SetReceiveMissedEventsOutsideIterationRange is set to true, this callback will also receive events that are outside of the specified iteration range.
The callback will be handed an event object (see guildhistory_data.lua) which must not be stored or modified, as it can change after the function returns.
@param callback — The function that will be called for each missed event that was found.
@return success — true if the condition was set successfully, false if the processor is already running.
See:
SetNextEventCallback
Sets a callback which will get passed all events in the specified range in the correct historic order (sorted by eventId).Lua Code:
(method) GuildHistoryEventProcessor:SetNextEventCallback(callback: fun(event: ZO_GuildHistoryEventData_Base)) -> success: boolean
The callback will be handed an event object (see guildhistory_data.lua) which must not be stored or modified, as it can change after the function returns.
@param callback — The function that will be called for each event that is processed.
@return success — true if the condition was set successfully, false if the processor is already running.
See:
SetOnStopCallback
Set a callback which is called after the listener has stopped.Lua Code:
(method) GuildHistoryEventProcessor:SetOnStopCallback(callback: fun(reason: StopReason)) -> success: boolean
Receives a reason (see lib.StopReason) why the processor has stopped.
@param callback — The function that will be called when the processor stops.
@return success — true if the condition was set successfully, false if the processor is already running.
See:
SetReceiveMissedEventsOutsideIterationRange
Controls if the processor should forward missed events outside of the specified iteration range to the missedEventCallback.Lua Code:
(method) GuildHistoryEventProcessor:SetReceiveMissedEventsOutsideIterationRange(shouldReceive: boolean) -> success: boolean
@param shouldReceive — true if missed events outside of the specified iteration range should be forwarded, false if they should be ignored.
@return success — true if the condition was set successfully, false if the processor is already running.
See:
SetRegisteredForFutureEventsCallback
Sets a callback which is called when the processor starts waiting for future events.Lua Code:
(method) GuildHistoryEventProcessor:SetRegisteredForFutureEventsCallback(callback: function) -> success: boolean
@param callback — The function that will be called when the processor starts waiting for future events.
@return success — true if the condition was set successfully, false if the processor is already running.
SetStopOnLastCachedEvent
Controls if the processor should stop instead of listening for future events when it runs out of events before encountering an end criteria.Lua Code:
(method) GuildHistoryEventProcessor:SetStopOnLastCachedEvent(shouldStop: boolean) -> success: boolean
@param shouldStop — true if the processor should stop when it runs out of events, false if it should wait for future events.
@return success — true if the condition was set successfully, false if the processor is already running.
Start
Starts the processor and passes events to the specified callbacks asyncronously. The exact behavior depends on the set conditions and callbacks.Lua Code:
(method) GuildHistoryEventProcessor:Start() -> started: boolean
@return started — true if the processor was started successfully, false if it is already running.
StartIteratingTimeRange
Convenience method to configure and start the processor to iterate over a specific time range and stop after it has passed all available events.Lua Code:
(method) GuildHistoryEventProcessor:StartIteratingTimeRange(startTime: integer53, endTime: integer53, eventCallback: fun(event: ZO_GuildHistoryEventData_Base), finishedCallback: fun(reason: StopReason)) -> started: boolean
@param startTime — The start time of the range (inclusive).
@param endTime — The end time of the range (exclusive).
@param eventCallback — The function that will be called for each event that is processed.
@param finishedCallback — The function that will be called when the processor stops. Only when StopReason.ITERATION_COMPLETED is passed, all events in the range have been processed.
@return started — true if the processor was started successfully, false if it is already running.
See:
StartStreaming
Convenience method to start the processor with a callback and optionally only receive events after the specified eventId.Lua Code:
(method) GuildHistoryEventProcessor:StartStreaming(lastProcessedId: integer53|nil, eventCallback: fun(event: ZO_GuildHistoryEventData_Base)) -> started: boolean
@param lastProcessedId — The last eventId that was processed by the addon or nil to start with the oldest managed event.
@param eventCallback — The function that will be called for each event that is processed. If not provided here, it has to be set with SetNextEventCallback beforehand, or the processor won't start.
@return started — true if the processor was started successfully, false if it is already running.
Callbacks
Stop
Stops iterating over stored events and unregisters the processor for future events.Lua Code:
(method) GuildHistoryEventProcessor:Stop() -> stopped: boolean
@return stopped — true if the processor was stopped successfully, false if it is not running.
Callbacks.CATEGORY_LINKED
Fired when a category has linked the managed range to present events. The guildId and category are passed as arguments.
Callbacks.HISTORY_RESCAN_ENDED(deprecated)
Rescan no longer exists.
Callbacks.HISTORY_RESCAN_STARTED(deprecated)
Rescan no longer exists.
Callbacks.INITIALIZED
Fired when the library has finished setting everything up.
Any calls to the api (aside of registering for the event) should happen after this has fired.
It will receive the LibHistoire object as an argument.
Keep in mind that this may fire before EVENT_ADD_ON_LOADED, so make sure to check if the library is ready before listening to the callback.
See:
Callbacks.LINKED_RANGE_FOUND(deprecated)
Use MANAGED_RANGE_FOUND instead.
See:
Callbacks.LINKED_RANGE_LOST(deprecated)
Use MANAGED_RANGE_LOST instead.
See:
Callbacks.MANAGED_RANGE_FOUND
Fired when a new managed range has been found. The guildId and category are passed as arguments.
This happens when the managed range is established initially or after the managed range was lost.
StopReason
Callbacks.MANAGED_RANGE_LOST
Fired when the managed range has been lost. The guildId and category are passed as arguments.
This could be due to the cache being deleted, the library detecting inconsistencies in its own save data or the user manually resetting the range.
StopReason.ITERATION_COMPLETED
An end condition has been set and the first event outside of the specified range was encountered
See:
StopReason.LAST_CACHED_EVENT_REACHED
The stopOnLastCachedEvent flag has been set and the last cached event was reached
See:
StopReason.MANAGED_RANGE_LOST
The managed range was lost (fires right after MANAGED_RANGE_LOST callback)
See:
StopReason.MANUAL_STOP
Stop has been called by the addon
See:
- sliders to set how long the guild history cache should retain data- fixed managed range reset not working correctly in some cases
- a button to allow resetting all caches at once
- the path to the cache files
- now it will properly explode instead of silently getting stuck when invalid timestamps are receivedv2.2.1
- NOTE: switching guilds and categories via the status panel won't send requests automatically. You'll have to manually hit E or use the ingame ui to do so- added new entry to status window menu to show debug information
- NOTE: it's still a bit experimental, so let me know if you encounter any issues and be prepared to update your code if necessary- fixed legacy listener SetBeforeEventTime, SetTimeFrame and iterationComplete callback behaving slightly different from version 1
- check the addon description for more information and a migration guide
- there is also an api.doc.lua file which can be used with language servers to provide autocompletion without having to include the full source code
- NOTE: legacy listeners will continue to be called just that- changed exit warning dialogues to show up less frequently and be more clear about why you should care
- NOTE: everything will explode for now when it happens. Please make sure to report it, so I can get an idea when and how often it occurs and decide what to do about it- added shift modifier to pagination buttons in the vanilla history UI to allow jumping to the first or last page quickly
- as long as the guild history menu is open, LibHistoire will now prefer requests for the currently visible guild- further reduced amount of automated requests by not sending them to categories that won't produce any events (e.g. guild without bank or store)
- other than that it will prioritize requests by how many listeners are registered for a category as well as a base priority (trading > bank gold > bank items > roster > others)
- automatic removal of old history save data- smart history requests
- removed rescan and force link features
- compatibility layer for old history api
- new api callbacks
- skip requests for categories with no listening addons- new category cache menu
- fetch oldest events first after prolonged absense
- reset linked range button- improved cache status bar
- clear cache button
- request mode setting
- cache segmentation displayv1.5.1
- automated request visualization
- animated progress bar
- zoom level setting (in main menu)
- new colors
NOTE: No data was lost and I believe I've found and fixed all incorrect cases and added unit tests to guard against regressions. As an additional measure the lib will now also throw an assertion error if it encounters links that cannot be decoded. Please make sure to report these so I can add them to the test cases and fix them!
- GetKey - returns an identifier which can be used to store the last seen eventId for a listenerv1.0.2
- GetGuildId - returns the guildId of a listener
- GetCategory - returns the category of a listener
- GetPendingEventMetrics - returnsthe amount of stored or unlinked events that are currently waiting to be processed by the listener- SetBeforeEventId, SetBeforeEventTime
the average processing speed in events per second or -1 if not enough data is yet available
the estimated time in seconds it takes to process the remaining events or -1 if no estimate is possiblethese can be used to limit the iteration range and automatically stop the listener when they are passed- SetIterationCompletedCallback
they will also ensure the correct data is returned by the GetPendingEventMetrics function when only a subset of the data is requested (otherwise it will consider all available events)when an end criteria is set, this callback will fire when the listener has stopped automatically- SetTimeFrame(startTime, endTime)a convenience method to specify a range which includes the startTime and excludes the endTime
File Name |
Version |
Size |
Uploader |
Date |
2.3.0 |
137kB |
sirinsidiator |
03/28/24 01:58 PM |
|
2.2.0 |
137kB |
sirinsidiator |
03/27/24 01:58 PM |
|
2.1.1 |
128kB |
sirinsidiator |
03/23/24 07:40 AM |
|
2.1.0 |
128kB |
sirinsidiator |
03/21/24 05:53 PM |
|
2.0.7 |
127kB |
sirinsidiator |
03/17/24 12:11 PM |
|
2.0.6 |
127kB |
sirinsidiator |
03/16/24 10:48 AM |
|
2.0.5 |
127kB |
sirinsidiator |
03/15/24 05:02 PM |
|
2.0.4 |
126kB |
sirinsidiator |
03/15/24 06:05 AM |
|
2.0.3 |
126kB |
sirinsidiator |
03/14/24 07:24 PM |
|
2.0.2 |
126kB |
sirinsidiator |
03/13/24 07:20 PM |
|
2.0.1 |
126kB |
sirinsidiator |
03/12/24 07:06 PM |
|
2.0.0 |
124kB |
sirinsidiator |
03/11/24 04:49 AM |
|
1.5.1 |
120kB |
sirinsidiator |
11/02/23 11:51 AM |
|
1.5.0 |
120kB |
sirinsidiator |
11/01/23 03:20 PM |
|
1.4.1 |
118kB |
sirinsidiator |
06/14/23 12:54 PM |
|
1.4.0 |
118kB |
sirinsidiator |
04/19/23 12:44 PM |
|
1.3.0 |
118kB |
sirinsidiator |
11/01/22 08:16 AM |
|
1.2.2 |
118kB |
sirinsidiator |
04/25/21 06:41 AM |
|
1.2.1 |
118kB |
sirinsidiator |
04/24/21 03:01 PM |
|
1.2.0 |
118kB |
sirinsidiator |
04/22/21 01:22 PM |
|
1.1.3 |
119kB |
sirinsidiator |
12/12/20 11:12 AM |
|
1.1.2 |
118kB |
sirinsidiator |
12/05/20 02:33 PM |
|
1.1.1 |
118kB |
sirinsidiator |
12/05/20 09:47 AM |
|
1.1.0 |
118kB |
sirinsidiator |
12/04/20 07:01 AM |
|
1.0.2 |
115kB |
sirinsidiator |
10/31/20 05:32 AM |
|
1.0.1 |
115kB |
sirinsidiator |
10/25/20 04:32 PM |
Comment Options |
jinncrazey |
View Public Profile |
Send a private message to jinncrazey |
Find More Posts by jinncrazey |
Add jinncrazey to Your Buddy List |
03/01/22, 11:25 PM | |||
Forum posts: 1
File comments: 4
Uploads: 0
|
|
||
|
talmak |
View Public Profile |
Send a private message to talmak |
Find More Posts by talmak |
Add talmak to Your Buddy List |
05/13/22, 04:31 PM | |
is it normal that i have to link again almost every day for some guilds?
|
|
|
Dingodan |
View Public Profile |
Send a private message to Dingodan |
Find More Posts by Dingodan |
Add Dingodan to Your Buddy List |
05/21/22, 10:40 AM | |
Forum posts: 0
File comments: 25
Uploads: 0
|
Guild Bank Data will not retain link
I have 5 guild memberships. 4 of them are working fine. The newest guild has all but the Bank data consistently linking. For this one most recent guild, the Bank data just won't retain it's linking. Each time I logout, it shows this guild bank data not linked. There is no option to Show More because there is no more data to load (there is no regular activity in this guild bank). As I'm viewing this I can scroll all the way up and down in the existing guild history with no missing data, so it's all present. I've tried various things like switching to other guild info tabs. I've force linked the Guild Bank data several times on previous logouts.
Update 05/31/2022 The issue eventually resolved itself, but it did take several days (at least 4-5 days). Not sure what caused it to finally resolve itself.
Last edited by Zantari Zenithoc : 05/31/22 at 09:46 AM.
|
|
Zantari Zenithoc |
View Public Profile |
Send a private message to Zantari Zenithoc |
Find More Posts by Zantari Zenithoc |
Add Zantari Zenithoc to Your Buddy List |
06/01/22, 02:15 AM | ||
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
06/01/22, 02:18 AM | ||
Last edited by Sharlikran : 06/01/22 at 02:41 AM.
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
06/01/22, 02:22 AM | ||
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
06/01/22, 02:32 AM | ||
So unless you use MM or Advanced Member Tooltip then you don't need this Library at all. As far as doing that you should make a backup of your current file anyway because High Isle is coming out soon. For MM users, once you make a copy, use the Refresh LibHistoire button under LibGuildStore. Then move the backup to a safe place. After you exit the game, you need to delete only LibHistoire.lua and LibGuildStore.lua under SavedVariables. Then when you log in do a Ten Day scan. If your data becomes corrupt you would exit the game and restore and refresh the old backup first. You will need to force link the events though for the old file. Don't do a ten day scan. Then exit the game and restore and refresh the current backup. Then link events or rescan older events to be sure there are no gaps. Do not touch LibGuildStore.lua during that process. Once MM is initialized then Refresh LibHistoire button under LibGuildStore. That would restore previous sales, and then the new LibHistoire sales depending on your MM settings. If you are at 30 days for MM and your new file has more then 30 days then you don't have to restore the previous file.
Last edited by Sharlikran : 06/04/22 at 10:54 PM.
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
06/01/22, 02:39 AM | ||
Also I hear a rumor (from the UI dev) that ZOS may have allegedly considered disallowing authors to use the data so be happy they didn't. As I mention in my documentation you should be updating your sales data each day. If you don't it will take longer and longer depending on the sales volume. Users in a guild with billions a month in sales could never allow the server to give them their sales data automatically. Although LibHistoire does request the data and the server does provide the data automatically, it just depends on server load and sales volume of the guild. A few hundred sales a day might work to allow it to happen automatically. Otherwise it depends on sales volume.
Last edited by Sharlikran : 06/01/22 at 03:07 AM.
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
06/17/22, 12:01 AM | |
Forum posts: 2
File comments: 44
Uploads: 0
|
Too frequent updating?
I had to reinstall ESO today. Yesterday, everything worked fine. Now, every time I log off (doing crafting writs, so every 4 minutes), LibHistoire requires scanning of the past week or so. Any idea what might cause this? It is scanning the same sales, each time.
NVM. The same thing is happening when I disable LibHistoire. I will try disabling TTC and Arkadius, one at a time, to narrow this down.
Last edited by Poalima : 06/17/22 at 03:07 PM.
|
|
Poalima |
View Public Profile |
Send a private message to Poalima |
Find More Posts by Poalima |
Add Poalima to Your Buddy List |
06/20/22, 08:11 AM | ||
Re: Too frequent updating?
As mentioned in a previous post LibHistoire is not used by ATT. ATT and LibHistoire both read the Guild History directly like MM 3.1.0 was doing in Oct of 2020. As mentioned on the description page the reason for the LibHistoire cache is to reduce the amount of load on the server. I'd read about it as I'm sure sirinsidiator explains it pretty well. So if you do not use MM then you could uninstall this library, you don't need it. If you wonder about Guild Sales information then that's also explained many times. I'd read the previous posts. Simply put ZOS does not intend to send you previous sales information from the time you are logged off. It is an enormous drain on the server. So it does not come to you like a streaming video service. Instead any mod using the ZOS provided code can request data automatically like LibHistoire does however, the server will frequently deny those requests. It isn't that LibHistoire needs to gather sales too frequently, ZOS does not send you information frequently when mods request it. This has been this way for more then 2 years now, maybe three years. If you use Master Merchant then read the documentation on how to Update Your Guild History Each Day and do a Ten Day Scan to make sure you have all the data the server retains. As mentioned in the section for the MM docs Unlinked Events Notification the server only retains 10 days of data. Once you have ten days you don't ever need to do a Ten Day scan again unless your data is corrupted and you reset it or unless you go longer then 10 days without logging into ESO and obtaining your sales data.
Last edited by Sharlikran : 06/20/22 at 08:14 AM.
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
08/10/22, 03:44 AM | |
Forum posts: 0
File comments: 8
Uploads: 0
|
Is there a way to prune particularly old data? I've seen mention of backing up the current file and starting fresh, but I'm hoping for a happy medium between "here's two years" and "here's ten days".
|
|
pauli |
View Public Profile |
Send a private message to pauli |
Find More Posts by pauli |
Add pauli to Your Buddy List |
08/16/22, 09:15 AM | |
Forum posts: 9
File comments: 42
Uploads: 0
|
Libhistoire is the cause of freezes in the game
Hi Sharlikran, since a long time I have a lot of freezes in the game, mostly when I summon another character, or when I open packed rewards, or when I accost a jewelry station. I've tried a lot of solutions, but only disabling Libhistoire is the real solution. But I can not do without Libhistorie if I want MM to work. So please have you got a solution for me ? Is it possible that changing my pc with a more performant one could improve the fluidity of the game ? Or maybe is there another less drastic way ?
|
|
Rishikesa108 |
View Public Profile |
Send a private message to Rishikesa108 |
Find More Posts by Rishikesa108 |
Add Rishikesa108 to Your Buddy List |
08/19/22, 06:41 PM | ||
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
08/19/22, 06:52 PM | ||
Re: Libhistoire is the cause of freezes in the game
Not caused by any mods I use or LibHistoire.
Last edited by Sharlikran : 08/20/22 at 06:54 PM.
|
||
|
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
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.