ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   General Authoring Discussion (https://www.esoui.com/forums/forumdisplay.php?f=174)
-   -   Auto Saving SavedVariables (https://www.esoui.com/forums/showthread.php?t=7901)

ZOS_DanBatson 06/29/18 08:42 AM

Auto Saving SavedVariables
 
Hi all,

We're looking to come up with a robust solution to the problem many of you have had when it comes to SavedVars not saving when the game closes unpredictably. We want to implement an auto saving system but also include options to opt out and request a save manually. By default, this system will automatically save SavedVar data for each addon, one at a time, with a large (minute(s)) time interval between addon saves. For addons that opt out, there will be a function to manually request that their saved vars be placed at the front of the list to be saved on the next opportunity. This manual request will have a larger cooldown (15min-ish).

We’ll disable auto saving by checking an addon config:
## DisabledSavedVariablesAutoSaving: 1

When a save occurs, we will attempt to do the work to save it out. If the save was not triggered manually and the work takes longer than some reasonable amount of time that we’ll determine, we will abort the save and increment numSaveAttempts. If numSaveAttempts goes higher than some reasonable number of attempts (maybe 3?), we’ll consider the addon to be too intensive to auto save and it won’t try again. Manual saves go through regardless of how long they take.

We would like to get your thoughts on this idea. Do you think this will be helpful to you? Does it give you enough control, and if not, what do you think is it missing? Can you see any serious issues this may cause for you?

Thanks!

sirinsidiator 06/29/18 09:12 AM

I really would love to see this!
My main concern is that right now the table keys in the saved variables are serialized in a random order. This means every time a file is saved, it looks vastly different to the previous revision, which in turn makes it impossible to efficiently create incremental backups. My saved variables folder is close to 250MB right now, which could easily lead to a gigabyte of unnecessary backups every hour.
Ideally this auto save (and also the regular save) would store the keys in alphabetical order and check if the resulting file would be different so it skips writing if there is no change at all.

Dolgubon 06/29/18 01:32 PM

This sounds great! I don't think it's really something that I will use explicitly, but it's a really good QOL improvement, not just for add-on authors, but any players who use add-ons. As far as explicit uses go, I can see my lazy farmer using it, but I don't know if I'd spend the time to update it to use that.

Baertram 06/29/18 01:54 PM

I think it's a good addition but some ppl mentioned it shouldn't save if you are in a fight, especially not if you are in a dungeon or even trial!

Not sure if the saving will produce any delay.
But I support the idea of Sirinsidiator to compare the savedvars in memory with the file somehow (by help of a hash e.g.) before saving it, if nothing has changed.

votan 06/29/18 02:11 PM

Are they saved asynchronous? E.g. via memory snapshot. I can imagine some saved-vars could take a bit longer.

SilverWF 06/29/18 08:33 PM

Hey Dan, this is great!

Any news on when it would be possible to receive new mails without need to relog or change map?

SDPhantom 06/29/18 09:47 PM

I think it would be a better idea to make the option so you have to opt in to have it work. Making it run by default can cause performance issues with addons that store large amounts of cache data to their saved variables until the author gets around to turning the option off.

Something like this:
Code:

## SavedVariablesAutoSave: 1

votan 06/30/18 02:27 AM

Maybe the author can mark a savedVar as dirty. The authors know best, if a critical change was made.

Sorondor 06/30/18 06:36 AM

I agree that opt in is much preferred. I use more than a few addons that are no longer updated/supported, but still work. (Some just work and others I've fixed so they work again.) I'm unsure how autosaving might impact them or my client's performance. Sure, I could edit all the old addons with "## DisabledSavedVariablesAutoSaving: 1", but that wouldn't be necessary if the system was opt in.

Using the example Dan posted, implement "## EnabledSavedVariablesAutoSaving: 1" to opt in instead.

I also like the dirty flag suggestion. What would really be nice is if specific keys could be marked dirty and only those keys saved during an autosave cycle. However, I have no idea if it's possible to write to SavedVars in part or if it must be written whole every single time.

sirinsidiator 06/30/18 07:27 AM

I would also love it if that feature could be turned off globally via the user settings and maybe start turned off in the first iteration, until we see how it impacts the game on a larger scale.

silvereyes 06/30/18 09:36 AM

imo, any behavior change like this that could adversely affect performance should be opt-in; Edit: or perhaps just disabled for out of date add ons.

SDPhantom 06/30/18 02:23 PM

Quote:

Originally Posted by votan (Post 35214)
Maybe the author can mark a savedVar as dirty. The authors know best, if a critical change was made.

In Dan's example, running the manual save function registers the saved var to be picked up later by this process. What part of that isn't marking it as dirty?



Quote:

Originally Posted by Sorondor (Post 35216)
What would really be nice is if specific keys could be marked dirty and only those keys saved during an autosave cycle. However, I have no idea if it's possible to write to SavedVars in part or if it must be written whole every single time.

I highly doubt writing only specific keys would even be possible. Lua memory doesn't look like the code you see in the saved var files. It also doesn't have any stock method of turning data into such code. This is where a serializer comes in. A serializer takes data you give it and encodes it into some sort of string that can be read in by a deserializer to reconstruct the original data later. The serializer for saved vars takes the entire table and writes it into Lua code that can be read in by loadfile() as the deserializer.

If an attempt were to be made, the original file would have to be analyzed with a tokenizer to find where the original data for the key/value pair is in the file to replace it. This would take up a lot more processing than just overwriting the entire thing.

votan 06/30/18 02:58 PM

Quote:

Originally Posted by SDPhantom (Post 35219)
In Dan's example, running the manual save function registers the saved var to be picked up later by this process. What part of that isn't marking it as dirty?

There are repeatable actions and non-repeatable events.
repeatable action: Checkbox in the settings: Worse case: User has to do it again. => Can be handled like now.
non-repeatable event: Completing a quest: Worse case: Gone forever. => Should be saved soon.

Dolgubon 06/30/18 04:33 PM

Quote:

Originally Posted by votan (Post 35221)
There are repeatable actions and non-repeatable events.
repeatable action: Checkbox in the settings: Worse case: User has to do it again. => Can be handled like now.
non-repeatable event: Completing a quest: Worse case: Gone forever. => Should be saved soon.

As another example:


Craft 5 legendary items with the set crafter. Worst case: They make it again and lose 300k because that wasn't saved. A similar issue would exist with Writ Worthy, especially since some people do a large amount of them.


As another request, would it be possible to have the Save Request function return a value letting the add-on know if the save request has been approved?


Also, it would be great if an add-on could call it twice a few minutes apart, but then have an even longer cooldown. My use case here is actually with the set crafter/writ crafter. If a player adds an item to the queue (saved vars) then they will probably make it pretty quickly after. If it's just the one save request, then I'd save it for the actual crafting, but if it's possible to have two it would be nice to also have it save after a large amount of items are added to the queue. If that's too abusable for you, I'm still excited even for just the one save request option.




I'm seeing a lot of people worried about performance issues from this. How much of a concern is that actually? Maybe if an add-on's saved vars table is less than x amount the game can do default of auto saving, but if it has more than x amount of values it defaults to the current behaviour. Or even just make the 'reasonable' amount of time very short. Depending on the reasonable amount of time chosen, I don't see why there should be an issue with performance, in PvP, trials, or not.

SDPhantom 07/01/18 01:55 AM

Quote:

Originally Posted by votan (Post 35221)
There are repeatable actions and non-repeatable events.
repeatable action: Checkbox in the settings: Worse case: User has to do it again. => Can be handled like now.
non-repeatable event: Completing a quest: Worse case: Gone forever. => Should be saved soon.

I still don't see how this changes anything. You either need to save now and call the save function, and if it has to, it waits for the cooldown to finish. There is no way around this as per the design of it. If you call for it to save something not so important (as if marking the save dirty), it does the exact same thing. Which of these two processes do you see as different? A suggestion I would make, if this is the direction we're going, is to have the autosave and manual saves share the same cooldown. Something like 5 minutes seems reasonable to me.



An alternative I would suggest is to add a directive in the manifest that would both have an addon opt-in for autosave and configure how often the author wants it to occur. Something like ## AutoSaveInterval: 5 would set the interval for every 5 minutes. This has to be an integer greater than zero or the directive will be ignored.

In addition, a manual save function will be made available to all addons, regardless of this setting. For the sake of this example, the cooldown for an addon is 1 minute regardless of if processed by autosave or manually done so. A scheduler system should be made to handle the order in which addons save their data. This will act as a queue that iterates through one step every 5 seconds. When processed, addons configured for autosave will be rescheduled according to the interval set in their manifest. Manually calling the save function will modify the schedule to run at the the current timestamp, or 1 minute after the timestamp of the last save, whichever is greater.

To clarify, if an addon that's registered for autosave calls the manual function, it will still reschedule itself the same as if it was triggered by autosave. This supports more urgent saving and preserves the autosave feature at the same time. Duplicate entries for a single addon is not allowed. If there an entry already exists, it should be modified appropriately if the requested timestamp is earlier and the queue re-sorted. This design also allows the queue to fall behind if the step doesn't cycle through fast enough if there are too many addons using it.

Scootworks 07/01/18 03:30 AM

in general i like the idea of auto savings. in my opinion, one time each 15 or 30 is enough. in what cases you want to save it every 5‘?
what addon needs it?
- how many times per day you gonna change settings?
- merchant addon can read the history, not really needed

maybe some log addons or chat savings, but how many people are using this?

why not a button to save it manually? (with a function that can be called via lua code to be able to allow autosavings via RegisterForUpdate)

and after writing this text i believe, we don’t need SV autosaving

Baertram 07/01/18 04:49 AM

Saving any x minutes where x is below 5 won't happen imo as Dan has already stated in his thread above.
Making the opt in would be better imo, as existing addons need to be changed to adopt it.

SDPhantom 07/01/18 05:44 PM

Quote:

Originally Posted by Scootworks (Post 35228)
in general i like the idea of auto savings. in my opinion, one time each 15 or 30 is enough. in what cases you want to save it every 5‘?
what addon needs it?
- how many times per day you gonna change settings?
- merchant addon can read the history, not really needed

maybe some log addons or chat savings, but how many people are using this?

why not a button to save it manually? (with a function that can be called via lua code to be able to allow autosavings via RegisterForUpdate)

and after writing this text i believe, we don’t need SV autosaving

If this causes the game to stutter every 5, 15, or 30 mins, people are going to complain the same regardless of how long between. I thought 5 mins between saves would be more reasonable than 15. It doesn't matter if I'll have a use for it, but if it's an option that'll fit into more peoples' needs with hardly any impact, why not? Especially with something that'll effect everyone that plays the game in some way. In all honesty, I don't have a "need" for autosave either and I've crashed the game more times than I care to count.



Quote:

Originally Posted by Baertram (Post 35232)
Saving any x minutes where x is below 5 won't happen imo as Dan has already stated in his thread above.

From the sounds of it, Dan's team hasn't fully figured out how autosave is going to work, let alone ironed out an interval between saves. He posted here for suggestions, I made mine.

Dolgubon 07/01/18 06:03 PM

Quote:

Originally Posted by SDPhantom (Post 35241)
If this causes the game to stutter every 5, 15, or 30 mins, people are going to complain the same regardless of how long between. I thought 5 mins between saves would be more reasonable than 15. It doesn't matter if I'll have a use for it, but if it's an option that'll fit into more peoples' needs with hardly any impact, why not? Especially with something that'll effect everyone that plays the game in some way. In all honesty, I don't have a "need" for autosave either and I've crashed the game more times than I care to count.

I doubt it will cause the game to stutter. If it's something that would cause the game to stutter, I don't think it would be implemented.

SDPhantom 07/02/18 01:25 AM

Quote:

Originally Posted by Dolgubon (Post 35243)
I doubt it will cause the game to stutter. If it's something that would cause the game to stutter, I don't think it would be implemented.

Missing the point. It's not likely, but it is the worst that could happen and is the reason Dan suggested having a cooldown for saving in the first place.

sirinsidiator 07/02/18 02:43 AM

Quote:

Originally Posted by SDPhantom (Post 35255)
Missing the point. It's not likely, but it is the worst that could happen and is the reason Dan suggested having a cooldown for saving in the first place.

It's not mentioned here, but on Gitter Chip told us that the saved variables are written in a background thread, so there should not be any stutter or performance issue, unless you use a single core CPU or limit ESO to one core.

SDPhantom 07/02/18 01:55 PM

Quote:

Originally Posted by sirinsidiator (Post 35256)
It's not mentioned here, but on Gitter Chip told us that the saved variables are written in a background thread, so there should not be any stutter or performance issue, unless you use a single core CPU or limit ESO to one core.

Actual writing is a different stage of the process than serialization. In order to do it while the addon system is running, Lua cannot be allowed to execute any code or you'll have the possibility of data corruption. This means it needs to be done with the UI thread or at least lock it meanwhile. Locking the UI thread either way means the UI will be unresponsive for the duration and when that happens, it ties up the rendering engine as well. It's a cascading effect.

Just because something runs on a different thread doesn't mean thread locking doesn't exist, it's a necessity in certain applications.

ZOS_DanBatson 07/02/18 03:13 PM

Hi everyone,

Thank you so much for the feedback! I have another question, then I'll give a bit more info:

Can you provide me with some numbers on how big your addon's saved var files typically are? As many real examples as you can give me. If you know someone else's I'll take that too. I'm trying to get an idea of what's small, what's large, and what's typical.

As for the feedback, I can tell you that performance is a big focus here, and we will be trying a number of different avenues to ensure we aren't causing spikes. You're not the only ones concerned about that, believe me it's on our minds too. We may look into using some of your suggestions for that, as well.

As for auto on vs auto off, assuming performance is under control, a key to this feature is that not every addon developer is going to think or remember to enable this, nor will the many addons that are fully functional but not maintained anymore. We want this to help as many people as possible while not causing issues. We will strike that balance between speed and size to find a way to allow the most number of addons to leverage it. And priority saving will always be available to those whose addon is too beefy to do it automatically but they still want to save.

Dolgubon 07/02/18 04:02 PM

So I have 64 add-ons with saved variables. 25 have a file size less than 10 kilobytes.
10 have a file size between 10 and 50 KB
5 are between 50 and 100, and another 5 between 100 and 200.
There's just two between 200 and 1000
For the next few, I'm ignoring the MM00-MM15 files.
2 are between 1000 and 2000, and then there's one at 7.1 MB.


If you include MM, the lowest is 3.8 MB, largest is 8.5, and the average is 6.2 MB, with a deviation of 1.4 MB.

I do have a spreadsheet with the names of the addons and sizes here: https://docs.google.com/spreadsheets...it?usp=sharing


For one of my addons, the Set Crafter, I tried to see what some reasonable sizes would be.


With no use of it, it's about 6 KB (0 items). What I'd consider normal use (20 items) was about 50 KB Moderately heavy (80) was about 160. Very heavy use (200 items) gave me a size of 410.

The Writ Crafter uses 32 KB for me, and I don't think that the size will vary a lot.

Kyoma 07/02/18 04:21 PM

With regards to saved vars size, are we talking raw file size? Number of lines? Size of tables? All of the above?

SilverWF 07/02/18 07:22 PM

1 Attachment(s)
My SavedVars folder weight is ~124 MB - yes, I'm addons addict, more than 60 addons overall (if not count all MM clones) :D Not all of them are enabled on all characters tho...

So, ~124 MegaBytes, 78 files, there is some from uninstalled addons, sure, but their weight aren't big.
Most heavy files are at image. This is only 38 files, so also 40 more with size less than 70 KB

Scootworks 07/02/18 08:36 PM

36.4 MB

Shinni 07/03/18 02:58 AM

https://i.imgur.com/nEoxpfd.png
The average is 3.1mb per file.
When looking at my SavedVars folder, I feel like the files with more than 1mb are not important to be auto-saved.

The really large files (MM**.lua and ArkadiusTradeToolsSalesData**.lua) contain sales data from the guild history. If saving data of the current play session fails, the data is simply re-obtained upon the next login when scanning the guild's history. So I don't think these are files that would require auto-saving.

The HarvestMap**.lua files contain locations of crafting resources. If these files are large, then the player typically used some external tool to obtain data, in which case it is also not a big issue, if the data is lost.
However, if the files are small, then they typically only contain data collected by the player themself. In that case the player would be rather sad to lose the collected data from the current play session.
Personally, I think I would use the optional save request for HarvestMap to accommodate for these two different cases.

sirinsidiator 07/03/18 05:38 AM

After trimming some old files my saved variables folder has ~200MB where ~150MB are Master Merchant files. Second place is HarvestMap with 8.15MB and third comes QuickEnchanter with 8MB. Then I have 10 more files with a size between 1 and 6MB, 10 between 100kB and 1MB and the rest (59 files) below 100kB with an average size of 13kB (but most of them are <10kB actually).

Baertram 07/03/18 07:00 AM

My addon savedvariables folder:
I'm not using Master Merchant so my savedvars folder is "only" about 60MB in total

HarvestMap with 8.07 mb.
3 other addons with about 7 mb.
2 with 4 MB where 1 only stores set item data and won't be updated often (only manually) -> Would be cool if the savedvars would only save the "changed addon data" and not the "non changed set items database" on autosave!)
Several with 1-2 mb size
Several >250kb and < 1 mb
Several 10kb to 250kb
Lots of 1kb to 10kb

AssemblerManiac 07/03/18 08:20 AM

MM is largest with 213M
CraftStore is next largest at 7.7M
Furniture Catalogue and Inventory Insight are about 1.7M each
Everything else is 700k or smaller

Saved vars directory:

57 files
Code:

      481,049 AIResearchGrid.lua
      168,801 AUI.lua
      40,553 AwesomeGuildStore.lua
      254,398 CombatLogStatistics.lua
      29,874 CraftingSwit.lua
    7,750,709 CraftStoreFixedAndImproved.lua
        4,621 DefGB.lua
      729,101 Destinations.lua
        4,250 DoItAll.lua
        4,370 DolgubonsLazySetCrafter.lua
      34,033 DolgubonsLazyWritCreator.lua
      221,260 FCOItemSaver.lua
        6,326 FCOLockpicker.lua
    1,799,506 FurnitureCatalogue.lua
        3,353 GameInfo.lua
        1,718 GuildNotificator.lua
      151,794 HarvestMap.lua
      150,356 HarvestMapAD.lua
      205,990 HarvestMapDC.lua
      288,920 HarvestMapDLC.lua
      134,026 HarvestMapEP.lua
      308,569 HarvestMapNF.lua
    1,761,378 IIfA.lua
      12,957 LoreBooks.lua
        8,275 LostTreasure.lua
      129,135 MasterMerchant.lua
        1,165 merTorchbug.lua
  11,105,666 MM00Data.lua
  12,954,578 MM01Data.lua
  12,141,318 MM02Data.lua
  16,503,415 MM03Data.lua
  12,749,717 MM04Data.lua
  13,112,213 MM05Data.lua
  12,821,735 MM06Data.lua
  12,664,635 MM07Data.lua
  12,785,782 MM08Data.lua
  12,425,072 MM09Data.lua
  13,453,748 MM10Data.lua
  14,256,713 MM11Data.lua
  14,031,273 MM12Data.lua
  13,144,873 MM13Data.lua
  16,008,642 MM14Data.lua
  13,416,008 MM15Data.lua
        5,960 NoThankYou.lua
        9,430 PotionMaker.lua
      335,441 RAETIA_InfoHub.lua
      29,485 ResearchAssistant.lua
          610 Roomba.lua
      11,318 SkyShards.lua
      706,425 Srendarr.lua
          354 VotanSearchBox.lua
          842 VotansFishFillet.lua
      233,749 WritWorthy.lua
          175 ZAM_Notebook.lua
        1,109 Zgoo.lua
      142,909 ZO_Ingame.lua
          362 ZO_Pregame.lua
  229,740,044 bytes


Tarlac 07/03/18 11:11 AM

I'm not sure all addons need an autosave. Maybe just being able to program a save within the addon, will save a lot of unnecessary saves. In Cashier for example, it only needs to be saved when a transaction has occurred with the bank. Otherwise it does not care. I would prefer to not have it autosaving every X minutes wasting processing power when it does not do anything. But if I disable the autosave, I would like to be able to program into the code that it causes a save when its data is changed. So no lost data will occur.

Marazota 07/03/18 12:06 PM

Quote:

Originally Posted by sirinsidiator (Post 35256)
It's not mentioned here, but on Gitter Chip told us that the saved variables are written in a background thread, so there should not be any stutter or performance issue, unless you use a single core CPU or limit ESO to one core.

if its true, why when MM saving data after a scan of a new guild i just joined, game become a slide show for 30s at 8-core cpu?

Shinni 07/03/18 12:18 PM

Quote:

Originally Posted by Marazota (Post 35278)
if its true, why when MM saving data after a scan of a new guild i just joined, game become a slide show for 30s at 8-core cpu?

sirinsidiator was talking about the future auto saving of savedvariables, not about anything that currently exists in the game.
btw the MM lag has nothing to do with saving data. the lag does not come from saving something to the hard drive. in the current game version, saving is only done when you logout or /reloadui.
the lag comes from mm scanning and processing the guild sales history.

Letho 07/05/18 03:22 AM



Avg: ~ 218kb

nightstrike2 07/07/18 08:46 AM

Holy cow, my request got through?!?!?! I will happily do anything required to help test, integrate, and even design this feature!!!

nightstrike2 07/07/18 08:56 AM

And, your requested file size information:

Code:

total 273M
248K AlphaGear.lua
 32K AutoCategory.lua
 56K AwesomeGuildStore.lua
1.8M CraftStoreFixedAndImproved.lua
4.0K CrownCrateLogger.lua
4.0K FurniturePreview.lua
4.0K GearSetsSort.lua
1.7M HarvensQuestJournal.lua
180K HarvestMap.lua
140K HarvestMapAD.lua
 48K HarvestMapDC.lua
276K HarvestMapDLC.lua
 40K HarvestMapEP.lua
 36K HarvestMapNF.lua
2.3M kyoAchievenizer.lua
144K MasterMerchant.lua
1.1M MasterRecipeList.lua
 16M MM00Data.lua
 18M MM01Data.lua
 16M MM02Data.lua
 18M MM03Data.lua
 12M MM04Data.lua
 16M MM05Data.lua
 15M MM06Data.lua
 19M MM07Data.lua
 16M MM08Data.lua
 17M MM09Data.lua
 17M MM10Data.lua
 20M MM11Data.lua
 18M MM12Data.lua
 16M MM13Data.lua
 17M MM14Data.lua
 20M MM15Data.lua
236K pChat.lua
8.0K RareFishTracker.lua
1.0K Roomba.lua
4.0K SkyShards.lua
1.0K VotansImprovedOutfit.lua
4.0K Zgoo.lua
 76K ZO_Ingame.lua
4.0K ZO_Pregame.lua


Solinur 08/07/18 04:26 PM

Here you go:

Code:

    Length Name
    ------ ----
  35.68 KB AddonSelector.lua
    1.04 MB AlphaGear.lua
    8.26 KB AssistRapidRiding.lua
    630  B AsylumNotifier.lua
    826  B AuraMastery.lua
  82.74 KB AutoCategory.lua
    1.07 KB AutoInvite.lua
  23.03 KB AutoResearch.lua
  22.91 KB AwesomeGuildStore.lua
  10.50 MB BankManagerRevived.lua
    569  B Chat2Clipboard.lua
  66.83 KB CombatMetrics.lua
    6.88 MB CombatMetricsFightData.lua
  30.04 KB CombatReticle.lua
    458  B Constellations.lua
    734  B CraftBagExtended.lua
  15.00 KB CraftingStations.lua
  10.06 MB CraftStoreFixedAndImproved.lua
    3.93 KB CyrodiilAlert.lua
    1.28 KB DailyAlchemy.lua
    293  B DailyProvisioning.lua
    797  B DarkUI.lua
  802.06 KB Destinations.lua
    4.78 KB DeveloperSuite.lua
  12.53 KB DevTools.lua
  41.47 KB DolgubonsLazyWritCreator.lua
  137.90 KB Dustman.lua
    8.28 KB FCMQT.lua
  318.49 KB FCOItemSaver.lua
    2.10 KB FCOLockpicker.lua
    8.29 KB FCOStarveStop.lua
    7.21 KB filelist.txt
  14.38 KB FoundryTacticalCombat.lua
  134.80 KB FurnitureCatalogue.lua
    328  B FurnitureCatalogue_Export.lua
    739  B FurniturePreview.lua
  15.13 KB GroupDamageShare.lua
    4.23 KB GuildBankTwiddler.lua
    2.94 KB HarvensImprovedSkillsWindow.lua
    453  B HarvensStackSplitSlider.lua
  151.06 KB HarvensTraitAndStyle.lua
  103.55 KB HarvestMap.lua
    1.20 MB HarvestMapAD.lua
    1.46 MB HarvestMapAD-backup.lua
    1.38 MB HarvestMapDC.lua
    1.60 MB HarvestMapDC-backup.lua
    1.35 MB HarvestMapDLC.lua
  818.61 KB HarvestMapDLC-backup.lua
    1.68 MB HarvestMapEP.lua
    1.55 MB HarvestMapEP-backup.lua
    1.83 MB HarvestMapNF.lua
    1.07 MB HarvestMapNF-backup.lua
    1.64 KB HelmetToggle.lua
    353  B HoFNotifier.lua
    1.69 MB IIfA.lua
    1.19 MB ImprovedDeathRecap.lua
    3.03 KB JoGroup.lua
    315  B jovAST.lua
  329.85 KB KillCounter.lua
    789  B LibGroupSocket.lua
    947  B LightAttackHelper.lua
    2.90 KB LootDrop.lua
    363  B LootLog.lua
    7.26 KB LoreBooks.lua
  13.87 KB LostTreasure.lua
  83.07 KB MasterMerchant.lua
    1.17 MB MasterRecipeList.lua
    532  B merlinsRezHelper.lua
    1011  B merTorchbug.lua
  11.43 KB MitigationPercent.lua
    9.17 MB MM00Data.lua
  10.06 MB MM01Data.lua
  10.26 MB MM02Data.lua
  10.68 MB MM03Data.lua
    9.69 MB MM04Data.lua
    8.56 MB MM05Data.lua
    9.03 MB MM06Data.lua
  10.20 MB MM07Data.lua
    9.23 MB MM08Data.lua
    9.71 MB MM09Data.lua
  10.84 MB MM10Data.lua
  11.04 MB MM11Data.lua
  11.24 MB MM12Data.lua
    9.02 MB MM13Data.lua
  11.97 MB MM14Data.lua
  10.42 MB MM15Data.lua
    215  B NoobFilter.lua
    5.31 KB NoThankYou.lua
  390.35 KB pChat.lua
    794  B PenTest.lua
    8.96 KB Photographer.lua
    2.03 KB Postmaster.lua
  12.38 KB PotionMaker.lua
    9.25 KB PvPJ.lua
    9.29 KB RaidNotifier.lua
  29.29 KB Ravalox'QuestTracker.lua
  18.63 KB Recharge.lua
    1.63 KB RipFilter.lua
    522  B Roomba.lua
  33.39 KB SetManager.lua
    188  B sidTools.lua
    9.57 KB Siroria.lua
    7.92 KB SkyShards.lua
    2.98 KB SocialIndicators.lua
    3.33 KB SpentSkillPoints.lua
  20.61 KB SummonAssistant.lua
    7.77 KB SuperStar.lua
    1.26 KB Tank.lua
    2.70 KB TextureIt.lua
  240.95 KB tom.lua
  19.47 KB Untaunted.lua
  55.48 KB VotansAchievementsOvw.lua
    1.35 KB VotansAdaptiveSettings.lua
    543  B VotanSearchBox.lua
    2.09 KB VotansGroupPins.lua
    6.34 KB VotansImprovedLocations.lua
      38  B VotansImprovedOutfit.lua
  158.13 KB VotansKeybinder.lua
  10.92 KB VotansMiniMap.lua
    561  B VotansRuneTooltips.lua
    3.42 KB VotansSettingsMenu.lua
  424.05 KB vSAForDummies.lua
  54.65 KB WritWorthy.lua
  17.26 KB wykkydsToolbar.lua
    340  B Zgoo.lua
  209.25 KB ZO_Ingame.lua
    354  B ZO_Pregame.lua
    4.25 KB Zolan_AutoRepair.lua
  47.68 KB Zolan_ChatNotifications.lua


Phuein 08/07/18 10:04 PM

I'm the developer for Notebook 2018. A fan of the addon (yes, a fan! lol) directed my attention to this post.

At this point, ANY solution is welcome. Opt-in only for "large" savedvars files strongly preferable. My addons savedvars are generally "small", but the content is only user hand-made, so losses are terrible.

Also, when it is added, I wouldn't mind getting some notification with clear instructions / explanation. Be it a message here or an email as an addon developer. :) It'll be a celebration!


All times are GMT -6. The time now is 08:13 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI