Go to Page... |
INITIALIZED()
HISTORY_RESCAN_STARTED(integer guildId, integer category)
HISTORY_RESCAN_ENDED(integer guildId, integer category, integer numEventsBefore, integer numEventsInside, integer numEventsAfter, boolean foundInvalidEvents)
RegisterCallback(LibHistoire.callback type, function callback)
UnregisterCallback(LibHistoire.callback type, function callback)
LibHistoire.GuildHistoryEventListener listener = CreateGuildHistoryListener(integer guildId, integer category)
string key = GetKey()
integer guildId = GetGuildId()
integer category = GetCategory()
integer eventCount, number processingSpeed, number timeLeft = GetPendingEventMetrics()
boolean success = SetAfterEventId(id64 eventId)
boolean success = SetAfterEventTime(integer eventTime)
boolean success = SetBeforeEventId(id64 eventId)
boolean success = SetBeforeEventTime(integer eventTime)
boolean success = SetIterationCompletedCallback(function callback)
boolean success = SetStopOnLastEvent(boolean shouldStop)
boolean success = SetTimeFrame(integer startTime, integer endTime)
boolean success = SetNextEventCallback(function callback)
function(GuildEventType eventType, id64 eventId, integer eventTime, variable param1, variable param2, variable param3, variable param4, variable param5, variable param6)
boolean success = SetMissedEventCallback(function callback)
boolean success = SetEventCallback(function callback)
boolean success = Start()
boolean success = Stop()
boolean success = IsRunning()
LibHistoire:RegisterCallback(LibHistoire.callback.INITIALIZED, function() local listener = LibHistoire:CreateGuildHistoryListener(guildId, category) listener:SetEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- do something with the event data end) listener:Start() end)
LibHistoire:RegisterCallback(LibHistoire.callback.INITIALIZED, function() local listener = LibHistoire:CreateGuildHistoryListener(guildId, category) listener:SetTimeFrame(startTime, endTime) listener:SetNextEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- do something with the event data end) listener:Start() end)
LibHistoire:RegisterCallback(LibHistoire.callback.INITIALIZED, function() local function SetUpListener(guildId, category) local listener = LibHistoire:CreateGuildHistoryListener(guildId, category) local key = listener:GetKey() listener:SetAfterEventId(StringToId64(saveData.lastEventId[key])) listener:SetNextEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- the events received by this callback are in the correct historic order saveData.lastEventId[key] = Id64ToString(eventId) end) listener:SetMissedEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- events in this callback are out of order compared to what has been received by the next event callback and can even have an eventId smaller than what has been specified via SetAfterEventId. end) listener:Start() end for i = 1, GetNumGuilds() do SetUpListener(GetGuildId(i), category) end end)
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 |
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 |
Zenivo |
View Public Profile |
Send a private message to Zenivo |
Find More Posts by Zenivo |
Add Zenivo to Your Buddy List |
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
![]() |
||
Re: Automatisation?
This mod does request automatic updates but the server controls whether or not that request is granted. You collect the information manually because the game developers limit the data transmitted based on server load. Previous MM author Philgo attempted to bypass the server restrictions and ZOS told him to remove the code and they patched that exploit. Basically anyone trying to bypass server restrictions is the quickest way to have your mod completely disabled and it doesn't work anymore or removed from ESO UI.
Last edited by Sharlikran : 04/20/23 at 06:41 AM.
|
||
![]() |
![]() |
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
![]() |
|
Forum posts: 0
File comments: 42
Uploads: 0
|
Automatisation?
Please tell me how to edit the file, and which one, so that the addon collects data much faster? Sometimes I play for several hours, LibHistoire cannot collect data even for 12 hours in 3-4 guilds. Everything has to be done manually. And do it manually for +-5-10 minutes every day...
|
![]() |
![]() |
True_Bach |
View Public Profile |
Send a private message to True_Bach |
Find More Posts by True_Bach |
Add True_Bach to Your Buddy List |
![]() |
||
|
Re: Question Fetch all Bankgold added
(open in new tab and scroll down to "API Reference" and read from here) You have to know at least enough lua to use the Libhistoire API, otherwise parsing the LibHistoire's SavedVariables yourself will be much more complicated.
Last edited by Marcus Brody : 02/11/23 at 07:09 AM.
|
|
![]() |
![]() |
Marcus Brody |
View Public Profile |
Send a private message to Marcus Brody |
Find More Posts by Marcus Brody |
Add Marcus Brody to Your Buddy List |
![]() |
|
|
![]() Greetings,
in dont know much about the lua-stuff but your work ist great! If i want to mine data of your saved-vars, how can i fetch all bank deposites your addon saved ? It can be an lua-data-list woth account-id,amount and date oder json oder csv. I want tu use the history of bankgold added to guild in a external list. sry for my bad english ;D thank you! ![]() |
![]() |
![]() |
StubbiThrash |
View Public Profile |
Send a private message to StubbiThrash |
Send email to StubbiThrash |
Visit StubbiThrash's homepage! |
Find More Posts by StubbiThrash |
Add StubbiThrash to Your Buddy List |
![]() |
||
|
You should be able to see it by pressing G then going to the history tab ("swirling" arrow icon) If it still doesn't show, there should be a button on this tab. I can't imagine why you would want to see it elsewhere though? MM relies on LibHistoire to get its data on startup (and probably process guild events occuring after), but LibHistoire is not needed in any way to "operate" MM. They're not shown together on keyboard either and I wouldn't want them to. Except in specific maintenance conditions, you don't have to, and should not do anything with LibHistoire's interface. Scanning occurs automatically and doing unnecessary things with the LibHistoire interface could actually damage your history data.
Last edited by Marcus Brody : 02/07/23 at 09:24 AM.
|
|
![]() |
![]() |
Marcus Brody |
View Public Profile |
Send a private message to Marcus Brody |
Send email to Marcus Brody |
Visit Marcus Brody's homepage! |
Find More Posts by Marcus Brody |
Add Marcus Brody to Your Buddy List |
![]() |
|
Forum posts: 0
File comments: 6
Uploads: 0
|
Hello! I’m absolutely loving using your Add-on and MM. Absolutely “game”-changing addon that has made such a positive impact in buying / selling and can’t thank you enough for the addon, hours, and blood sweat and tears I imagine have been poured into this wonderful creation!
Quick(?) question though… how do I pull up the specific LibHist. add-on? The only way I can ever see the interface of it (to manually scan- which I prefer) is if I “quit” the game before it’s finished scanning on it’s own and I get the warning button that it isn’t finished scanning (and then can open it from there to manually scan). I’m sure there is a way (or command?) to pull up the interface without “quitting” the game (because sometimes it doesn’t pull up on quit (probably finished scanning) and the game quits without the warning. (Also, when I pull up the guild window with G, I just see the social guild menu- no MM, no LibHist. interface. When I pull up MM- I only see the sales history window- not the guild interface I see with LibHist; I play on gamepad; not sure if that’s the reason). Thank you! |
![]() |
![]() |
SkyrimDovahkin |
View Public Profile |
Send a private message to SkyrimDovahkin |
Send email to SkyrimDovahkin |
Visit SkyrimDovahkin's homepage! |
Find More Posts by SkyrimDovahkin |
Add SkyrimDovahkin to Your Buddy List |
![]() |
|
|
Possible codec issue
Hello,
I've recently encountered a problem with a sale event: [13316] = "1;CIxG;6WnWE;f:7j:5x6:1:v8k#5#1<3>N#32#4#9q#b#1<9>iJi:mA:N" The link in that event seems to deserialize to: |H0:item:119680:5:1:0:0:49:188:4:584:11:1:0:0:0:0:0:0:0:0:72000:0|h|h Which is broken. I have managed to find the original link through MM, which also seems weird to me because I was under the impression that MM would suffer the same issue (using LibHistoire data): |H0:item:119680:5:1:0:0:0:49:188:4:584:11:62:0:0:0:0:0:0:0:0:72000|h|h My understanding of MM and LibHistoire is limited and the code I've written to read LibHistoire data may be at fault here, but trying to reencode the link using bits of Codec.lua, I couldn't produce different results for |H0:item:119680:5:1:0:0:0:49:188:4:584:11:62:0:0:0:0:0:0:0:0:72000|h|h and |H0:item:119680:5:1:0:0:49:188:4:584:11:1:0:0:0:0:0:0:0:0:72000:0|h|h It looks that it could have to do with the fact that "62" with IntegerToString serializes to "10" Which could affect the number of compressed consecutives 0 and leave us with "1<9>" instead of "10<8>". As a matter of fact, I was able to manually repair the event this way: [13316] = "1;CIxG;6WnWE;f:7j:5x6:1:v8k#5#1<3>N#32#4#9q#b#10<8>iJi:mA:N" Does that make sense?
Last edited by Marcus Brody : 05/08/23 at 06:24 PM.
|
![]() |
![]() |
Marcus Brody |
View Public Profile |
Send a private message to Marcus Brody |
Send email to Marcus Brody |
Visit Marcus Brody's homepage! |
Find More Posts by Marcus Brody |
Add Marcus Brody to Your Buddy List |
![]() |
|
Forum posts: 2
File comments: 29
Uploads: 0
|
Thank you for thorough answer.
Have a good year! |
![]() |
![]() |
kueqvzzv |
View Public Profile |
Send a private message to kueqvzzv |
Send email to kueqvzzv |
Visit kueqvzzv's homepage! |
Find More Posts by kueqvzzv |
Add kueqvzzv to Your Buddy List |
![]() |
||
The E key to request more data from when you were logged off only gets sales while you were not logged into the game. There is no equivalent for new sales after you log in. You can not force that to update that is server controlled. The server limits the new sales that are presented to a player after you log in. If the server is under load it will not provide new sales at all. This is not a bug, it is intentional on the part of ZOS. This restriction has nothing to do with mod authors. Some people in the official forums have mentioned the only way to force it is to log out to the login screen where you put in your password. I don't recommend doing that because you will be logging in and out a lot. Just log in the next day and get your data. While we are talking about server restrictions I would like the take the time to remind everyone all server restricted information can not be resolved by mod authors. The last time Philgo attempted to do so ZOS removed the functionality and asked him to remove the code from MM. Also Arkadius does not use LibHsitorie at all. LibHistorie and Arkadius get data from the guild history panel. MM gets its information from LibHistorie. |
||
![]() |
![]() |
Sharlikran |
View Public Profile |
Send a private message to Sharlikran |
Send email to Sharlikran |
Visit Sharlikran's homepage! |
Find More Posts by Sharlikran |
Add Sharlikran to Your Buddy List |
![]() |
|
Forum posts: 2
File comments: 29
Uploads: 0
|
Till around 2 weeks ago I could follow my sales almost live (~1 min) with MasterMerchant or Arkadius but not anymore. Often I'm stuck with 2 or 4 hours old history with no way to update it manually, it simply shows as synced, all linked already. No lua error whatsoever. So or there's something wrong on my end but I can't find what or the API has been modified.
Edit: I'm not the only one affected in my trading guild.
Last edited by kueqvzzv : 12/20/22 at 03:21 AM.
|
![]() |
![]() |
kueqvzzv |
View Public Profile |
Send a private message to kueqvzzv |
Send email to kueqvzzv |
Visit kueqvzzv's homepage! |
Find More Posts by kueqvzzv |
Add kueqvzzv to Your Buddy List |
![]() |
|
I have just noticed LibHistoire.lua taking whopping 32MB space. I beleive this previously used to be a lot smaller, and shrunk almost to nothing after clicking on the reset listings buttons.
Is this normal? Also, do huge files in the saved variables folder affect loading times? |
|
![]() |
![]() |
Octopuss |
View Public Profile |
Send a private message to Octopuss |
Send email to Octopuss |
Visit Octopuss's homepage! |
Find More Posts by Octopuss |
Add Octopuss to Your Buddy List |
![]() |
|
|
|H1:guild:700291|hWalks-the-Uncharted|h
I can't remember if I've asked before or not, but I would genuinely love a feature to purge guilds I'm not currently in from libHistoire.
As a GM I really don't want to delete libHistoire.lua and start fresh; I'm quite attached to that historical data for my own guild. But I do have cached guild data that I don't need, and cached data from guilds I've not been in for ages. |
![]() |
![]() |
tralce |
View Public Profile |
Send a private message to tralce |
Send email to tralce |
Visit tralce's homepage! |
Find More Posts by tralce |
Add tralce to Your Buddy List |
![]() |
|
Could you by chance add an option for date format please? I'm from Europe and 6/27/2022 looks bizarre to me, not to mention I am majorly confused when the numbers can make sense in both directions.
We mostly use day.month.year.
Last edited by Octopuss : 11/03/22 at 12:02 AM.
|
|
![]() |
![]() |
Octopuss |
View Public Profile |
Send a private message to Octopuss |
Send email to Octopuss |
Visit Octopuss's homepage! |
Find More Posts by Octopuss |
Add Octopuss 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.