Download
(8 Kb)
Download
Updated: 04/12/21 04:04 PM
Pictures
File Info
Compatibility:
Flames of Ambition (6.3.5)
Updated:04/12/21 04:04 PM
Created:12/04/20 09:02 AM
Monthly downloads:60
Total downloads:6,032
Favorites:4
MD5:
Categories:Plug-Ins & Patches, ESO Tools & Utilities
GuildBankLedger - 3.x - Updated  Popular! (More than 5000 hits)
Version: 3.55
by: myristican [More]
IMPORTANT PLEASE READ -
This is a rework of the original GuildBankLedger by ziggr - It now no longer uses the old command to collect data and instead fetches it from LibHistoire.

This has unfortunately meant that the status messages now no longer work (I am working on this) I also have rewritten the save function so that it stores all data that LibHistoire has collected.

There is no longer a delay option as this is not needed.
The Export Data button is used in conjuction with the Export Timeframe option to only export in csv friendly format the data that you want. It default is 10 days, can be expanded to 90 currently, let me know if this needs to be longer.
The Refresh now button will force LibHistoire to run through all collected data and then complete the dupe check against your existing saved data. THIS CAN TAKE A LONG TIME and I currently don't have a "complete" message that shows.

It will however enable you to dynamically add guilds to the collection. Note - if you change what is being collected from "on" to "off" the existing data will still exist. If you want to remove the old data I would recommend deleting the saved variables and just starting again.


LibHistoire is a dependency please ensure you have it installed.

IMPORTANT: Saved Variables version has been updated to clear old values. If you don't have LibHistoire running with that data please save a copy of this file or export to csv!!

The default .lua file from this is now very large, proportional to the amount of data you have stored in LibHistoire, so please keep this in mind.

Fully reworked to use LibHistoire, with thanks to Baetram and Sharlikran for solving my stupid lua questions!

Added
  • LibHistoire usage to reduce server load
  • Option to select all data or gold only
  • All Guilds are disabled by default and All Data is selected
  • On first run turn on for guilds you want and select the type of data, you'll then need to /reloadui or log
  • Export Now button - The equivalent of the old Save Now - Utilises a date range at the bottom of the settings window to export only the past x amount of days that you set. (Default is 10days)
  • Save now button repurposed to Refresh - This will force any newly selected guilds to fetch data, as well as refresh all existing data collected

The CSV export requires you to use a windows or linux lua tool.
I used the one from http://luadist.org/ just download the windows one, and inside the /bin folder is a lua.exe, drag your GuildBankLedger_to_csv.lua onto that exe and itll do the rest.
CSV is exported into ../savedvariables/GuildBankLedger.csv


--------------------------------------
Currently Working on:
- Some other way to display/export data - Might be useful to display in game < could tie raffle function into this.
- - Maybe a better way to get data to csv without running another lua script?
- Debug messages for completion of data etc.
- Status to work in the settings window again
3.55
- Changed mm price lookup to use LibPrice

3.54
- Resolved error causing export/addon menu issues

3.53
- Reuploaded due to issue with first upload
- API Version updated

3.52
- Moved MM Price function to export to ensure it is always up to date, rather than historic
-- removed from the listener so this data wont be collected during event retrieval for new events

3.51
- Fixed Gold only export function so that it actually works

3.5
- Added a GBLData Lib for storing the Export data
- GuildBankLedger.lua saved variable now stores the actual event data rather than the CSV friendly format which should make for quicker duplicate checks
- Export function to enable selective data export based on timeframe (default 10days)
- Gold Only export function also moved to this new export part of the lib

3.41
- Small fix to resolve the duplicate check function so that it now actually works

3.4
- Save Now button repurposed to Refresh - this will restart the LibHistoire Listener and go back over all events
- - Also will now allow instant retrieval of newly enabled guilds
- Duplicate check function added to script to ensure the refresh doesn't write existing data

3.32
- Fixed export to csv script to include all fields

3.31
- LibHistoire now used for all data fetching
- Ensured data is writing correctly to file and not overwriting old data
- Status now needs to be fixed
- saved variables version increased to start all save data blank for use with libhistoire's stored data

3.2
- Switch added for Gold or All Data - All Data is default
- Lua to CSV updated to work with the above
- You can dynamically switch between All Data or Gold by changing the On/Off and running /gbl then /reloadui to get the variable to save

3.1
- Updated to use LibHistoire
- Data is now collected using LibHistoire and /gbl just saves whatever has been collected
Archived Files (15)
File Name
Version
Size
Uploader
Date
3.54
8kB
myristican
04/08/21 06:21 PM
3.54
9kB
myristican
04/08/21 06:08 PM
3.53
8kB
myristican
03/11/21 07:32 PM
3.53
8kB
myristican
03/08/21 02:03 PM
3.52
8kB
myristican
01/11/21 05:06 PM
3.51
8kB
myristican
01/05/21 05:59 PM
3.5
8kB
myristican
01/04/21 07:37 PM
3.41
7kB
myristican
12/31/20 07:26 PM
3.4
7kB
myristican
12/28/20 03:07 PM
3.32
7kB
myristican
12/22/20 12:31 PM
3.31
7kB
myristican
12/20/20 06:47 PM
3.3
7kB
myristican
12/20/20 04:40 PM
3.2
9kB
myristican
12/17/20 11:30 AM
3.1
8kB
myristican
12/16/20 06:14 PM
3.0.0
8kB
myristican
12/04/20 09:02 AM


Post A Reply Comment Options
Unread 02/01/21, 04:49 PM  
Kwoung

Forum posts: 0
File comments: 87
Uploads: 0
New issue, I apparently have a hole in my data. I exported the data and a husband & wife who made deposits did not appear in the export, but do on the guild bank history in game. LibHistoire says it has all the data, I even did a rescan, but their deposits still don't appear. Any clue as to why?

I am very worried they are not the only ones and my guild members will think we are ripping them off for their raffle entries.
Report comment to moderator  
Reply With Quote
Unread 01/11/21, 07:43 PM  
Kwoung

Forum posts: 0
File comments: 87
Uploads: 0
Originally Posted by myristican
I've moved the function to the export part now so the MMPrice will update during export, this should keep the prices up to date and mean that new items get MM data rather than it just being left blank.

It's uploaded in the latest version.
Had to delete everything and re-install, but seems to be working again!

Thanks!
Report comment to moderator  
Reply With Quote
Unread 01/11/21, 05:08 PM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
I've moved the function to the export part now so the MMPrice will update during export, this should keep the prices up to date and mean that new items get MM data rather than it just being left blank.

It's uploaded in the latest version.
Report comment to moderator  
Reply With Quote
Unread 01/11/21, 04:46 PM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
Originally Posted by Kwoung
Ok, just found a weird thing. None of the exports after 7pm last night seem to have a MM price, while everything before does. Are those stored in LibHistoire or are you looking them up during export?

Some insight... I was logged in with a different account when those deposits were made, but that account had MM data as well and I had GuildBankLedger disabled at the time. I only do exports on my main account.
The MM data comes from a look up on each item against MM, so it should happen during the event retrieval part, I can see I have random blanks. As its done when the event happens its possible MM doesnt hold any data for them at the time.
The only thing I could do is move that function to the export part I suppose as it would get out of date by x amount of days otherwise. Not sure how much work that might be, maybe not a lot as I would just need to get data for that field again, and it should then ensure its mostly up to date during export.

I'll have to play with it a little to ensure it doesnt increase the export time by any huge amount.
Report comment to moderator  
Reply With Quote
Unread 01/11/21, 02:40 PM  
Kwoung

Forum posts: 0
File comments: 87
Uploads: 0
Ok, just found a weird thing. None of the exports after 7pm last night seem to have a MM price, while everything before does. Are those stored in LibHistoire or are you looking them up during export?

Some insight... I was logged in with a different account when those deposits were made, but that account had MM data as well and I had GuildBankLedger disabled at the time. I only do exports on my main account.
Last edited by Kwoung : 01/11/21 at 03:08 PM.
Report comment to moderator  
Reply With Quote
Unread 01/11/21, 11:39 AM  
Kwoung

Forum posts: 0
File comments: 87
Uploads: 0
Thumbs up Re: New Update

Originally Posted by myristican
This should all hopefully be resolved in the latest version I have just released.
Let me know how it goes.
Nailed it... Thanks!

Report comment to moderator  
Reply With Quote
Unread 01/04/21, 07:38 PM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
New Update

This should all hopefully be resolved in the latest version I have just released.
Let me know how it goes.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 12:40 PM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
Originally Posted by BalaCroft
I deleted the Guild bank ledger saved variables and got rid of the fps drop and high ping.
After that the addon just gives me data older than month. So no new data at all
Also if I turn off the history and want only gold, it gives me empty sheet.
There is 29k stored events in guild bank for this guild I am trying to export.

Also the amount of events I am getting to my sheet varies time to time i run the addon.
Now I got 3522 last time 9072 rows... Do I have to wait longer time after pressing the refresh data before /relaodui?
This addon used to work like a charm.
Yeah unfortunately as I have no "in progress" message, you do just have to wait for it to collect all the data on that initial run. Most of the time I change the guild to on and then do a reloadui and wait for it, you can hit the button but its the same process anyway.

I might need to test the gold only part a little more, but all it should to is only write the Gold events to the lua rather than everything.

Your event numbers should match the number of events stored in libhistoire, but it can take a while to get through them all. Which is why I've wanted to work on a processing message or something to give people an idea for that first run.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 12:12 PM  
BalaCroft

Forum posts: 3
File comments: 27
Uploads: 0
I deleted the Guild bank ledger saved variables and got rid of the fps drop and high ping.
After that the addon just gives me data older than month. So no new data at all
Also if I turn off the history and want only gold, it gives me empty sheet.
There is 29k stored events in guild bank for this guild I am trying to export.

Also the amount of events I am getting to my sheet varies time to time i run the addon.
Now I got 3522 last time 9072 rows... Do I have to wait longer time after pressing the refresh data before /relaodui?
This addon used to work like a charm.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 11:12 AM  
BalaCroft

Forum posts: 3
File comments: 27
Uploads: 0
I would be happy to test and help.
Also it would be nice to just get only 10 days of donation data, it is quite overwhelming to scroll trought 2 months of guild deposits when doing lotto and such.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 10:51 AM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
Originally Posted by BalaCroft
I have exact same as Kwoung again.
I let it be on 6 hours on Saturday. It didn't help at all and it interferes the MM too.
Now I just keep this addon disabled if I don't use it.
Thanks for the update, The more feedback the better so I know what is going on, I have tried to test it as much as I can but I appreciate my data is not the same as everyone else's.

I'm going to see what I can get through tonight. Also if you would like to Beta test any of my cutting edge bits of script let me know and I can provide them as I hit milestones.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 10:17 AM  
BalaCroft

Forum posts: 3
File comments: 27
Uploads: 0
I have exact same as Kwoung again.
I let it be on 6 hours on Saturday. It didn't help at all and it interferes the MM too.
Now I just keep this addon disabled if I don't use it.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 09:57 AM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
Originally Posted by Kwoung
Originally Posted by myristican
I'm not sure what machines you are running or whether this is a first time run or what exactly as I've pushed through a lot of tests and my machine copes just fine with just about everything I've thrown at it.
Other than when I was testing some messages that caused the game to time out.
But I only have two guilds with maybe 20k events between them and yes if I hit the refresh it will drop the fps for some amount of time, can't remember how long, but I wasn't bothered as it was the only thing I was testing and wasn't trying to play.

The duplicate function is just so that if you hit the button to refresh the history or for some reason the same events are being recorded again, it will only record it once. It just uses that id field to check, the problem is currently all the data is stored in this csv format so I have to split it back up to do the duplicate check.

The only way I can currently see around that is to use a datastore addon that stores the data in the same format it comes in and then you would have to do an export to get it out in csv friendly format. It's a lot of recoding to do that so I was going to work on that over this week, although now I'm working again the time i have is reduced slightly.

What I did want to check from either of you was whether you've ever managed to let it finish collecting the entirety of the events you had selected? The first time run for a large amount of events will obviously take its time and whilst the lua script is doing things the in game fps does tend to take a plunge.

Yes I am looking at a way to do a time range, i suspect that when i change this to do an "export" rather than the way it currently is that's something that will be easier to implement, but I'll have to wait until later this week to get on it unfortunately.
Mine issue isn't a first time run. I have had LibHistoire and your addon loaded for a long time, this issue is new. I have had your addon disabled for 3 days, but enabled it for my guild raffle export last night. It completely lagged my computer to the point of unusable for about 30-40 minutes before calming down. The game was a slideshow and as I mentioned previously, even typing outside of the game was at 1 character per second it was lagged so bad. My computer is pretty high end (Core i7 9700K, M.2 2280 1TB PCIe NVMe 3.0 x4 3D2 QL SSD's, & 16GB Memory) and can handle almost anything I throw at it, so it definitely isn't me having a crummy computer.

If it helps, my LibHistoire currently has 281,767 events stored, 55,417 of which are in the guild I use your tool to export, and the only one I have selected in GBL.
I'm surprised it caused issues outside the game, I've only experienced in game lag, so that's interesting.
The most recent thing I added was the duplicate function, as it wasn't working properly and for anyone wanting to refresh all the data it meant that it would create multiple copies of the same data.
Of course what that now means its doing is per new event, checking every one of those 55k events, in doing so switching them out from the csv friendly format back into the original format.
As you can imagine that's a huge amount of processing, which when forced it seems to do as quick as it can, by eating all the processing power it can!

If you're happy leaving it disabled for now I will be fixing it this week, maybe today if I can work through the code required quick enough.

What I want to move to, and let me know if you think its a good idea seeing as you probably have more data than most people.
Having the raw data stored in its original format in one .lua which would then only be used to run in the background, do the duplicate checks etc. keep a full up to date copy, and then a second addon used for data management/export which has its own saved variable file.
So thats where the "export" data would go, so I'm thinking some interface to set the time you want, then hit a button and it grabs the data that resides in that time frame, converts it to the csv compatible string and dumps it into the .lua which you can then run your .lua to .csv script against giving you the output, but a much smaller size, with a timeframe variable.

Now the "export" would probably cause some lag, but it would be on-demand, so you can account for it and you'd have a complete message, or a progress message or something, so that you knew what was happening. This export function would then also be where the Gold Only option would reside, I could also move the Guild selection to this too but that might create a lot of extra data that no one wants logging, it might be a bit of trial and error really.

It's a lot of extra stuff that I'll need to write but if it keeps this viable for people with large amounts of data then I can certainly see the benefit, it would also solidify this as a useful upgrade for everyone who uses it.

Now what I would ask, is if you'd like to help develop this into something that does all of these things, so beta test for me essentially?
If so what I can do is pass you my in dev copies of stuff when I get new bits of things to try and you can see how it goes. That way we should see this processing problem before I release it to the wild. As I've said, for my smaller amount of data it seems to run okay, letting LibHistoire control the data flow of new events, but clearly this isnt the case for someone who is seeing many more events than I am.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 09:02 AM  
Kwoung

Forum posts: 0
File comments: 87
Uploads: 0
Originally Posted by myristican
I'm not sure what machines you are running or whether this is a first time run or what exactly as I've pushed through a lot of tests and my machine copes just fine with just about everything I've thrown at it.
Other than when I was testing some messages that caused the game to time out.
But I only have two guilds with maybe 20k events between them and yes if I hit the refresh it will drop the fps for some amount of time, can't remember how long, but I wasn't bothered as it was the only thing I was testing and wasn't trying to play.

The duplicate function is just so that if you hit the button to refresh the history or for some reason the same events are being recorded again, it will only record it once. It just uses that id field to check, the problem is currently all the data is stored in this csv format so I have to split it back up to do the duplicate check.

The only way I can currently see around that is to use a datastore addon that stores the data in the same format it comes in and then you would have to do an export to get it out in csv friendly format. It's a lot of recoding to do that so I was going to work on that over this week, although now I'm working again the time i have is reduced slightly.

What I did want to check from either of you was whether you've ever managed to let it finish collecting the entirety of the events you had selected? The first time run for a large amount of events will obviously take its time and whilst the lua script is doing things the in game fps does tend to take a plunge.

Yes I am looking at a way to do a time range, i suspect that when i change this to do an "export" rather than the way it currently is that's something that will be easier to implement, but I'll have to wait until later this week to get on it unfortunately.
Mine issue isn't a first time run. I have had LibHistoire and your addon loaded for a long time, this issue is new. I have had your addon disabled for 3 days, but enabled it for my guild raffle export last night. It completely lagged my computer to the point of unusable for about 30-40 minutes before calming down. The game was a slideshow and as I mentioned previously, even typing outside of the game was at 1 character per second it was lagged so bad. My computer is pretty high end (Core i7 9700K, M.2 2280 1TB PCIe NVMe 3.0 x4 3D2 QL SSD's, & 16GB Memory) and can handle almost anything I throw at it, so it definitely isn't me having a crummy computer.

If it helps, my LibHistoire currently has 281,767 events stored, 55,417 of which are in the guild I use your tool to export, and the only one I have selected in GBL.
Last edited by Kwoung : 01/04/21 at 09:02 AM.
Report comment to moderator  
Reply With Quote
Unread 01/04/21, 05:12 AM  
myristican
AddOn Author - Click to view AddOns

Forum posts: 10
File comments: 23
Uploads: 1
I'm not sure what machines you are running or whether this is a first time run or what exactly as I've pushed through a lot of tests and my machine copes just fine with just about everything I've thrown at it.
Other than when I was testing some messages that caused the game to time out.
But I only have two guilds with maybe 20k events between them and yes if I hit the refresh it will drop the fps for some amount of time, can't remember how long, but I wasn't bothered as it was the only thing I was testing and wasn't trying to play.

The duplicate function is just so that if you hit the button to refresh the history or for some reason the same events are being recorded again, it will only record it once. It just uses that id field to check, the problem is currently all the data is stored in this csv format so I have to split it back up to do the duplicate check.

The only way I can currently see around that is to use a datastore addon that stores the data in the same format it comes in and then you would have to do an export to get it out in csv friendly format. It's a lot of recoding to do that so I was going to work on that over this week, although now I'm working again the time i have is reduced slightly.

What I did want to check from either of you was whether you've ever managed to let it finish collecting the entirety of the events you had selected? The first time run for a large amount of events will obviously take its time and whilst the lua script is doing things the in game fps does tend to take a plunge.

Yes I am looking at a way to do a time range, i suspect that when i change this to do an "export" rather than the way it currently is that's something that will be easier to implement, but I'll have to wait until later this week to get on it unfortunately.
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.