Imperial City API Patch Notes & Change Log (Live)

ZOS_JessicaFolsom
ZOS_JessicaFolsom
Community Manager
ESOTU UI API Patch Notes (Version 100012)
These patch notes highlight the larger changes to the ESOTU API. For the full, updated API, please take a look at the newest version of the ESOTU UI documentation.

Combat and Effect API Changes
Before:
  • No information on effects that last less than 30 seconds.
After:
  • Addons will now receive information on effects shorter than 30 seconds as long as they affect the player or were cast by the player.

Before:
  • The EFFECT_CHANGED event was unit tag based, which means it was only sent if a unit tag existed for the unit with the effect on them. This means that if a player cast an effect on a target and then looked away, the addon would not receive updates about that effect. It also means it was difficult to track which unit the effect was cast on if the player casts the same effect on multiple targets.
After:
  • The EFFECT_CHANGED event now includes a unit name field and will always be sent, even if no unit tag exists. The event will continue to be sent for each applicable unit tag if unit tags do exist.

Before:
  • COMBAT_EVENT was stripped of most of its information if it failed a filtering check. These filtering rules were complex and hard to account for.
After:
  • COMBAT_EVENT is sent for all ability casts if the source or target is the player or their pet.

Additionally:
  • Added GetAbilityIcon(abilityId) – icon.
  • Added abilityId to EVENT_COMBAT_EVENT and EVENT_EFFECT_CHANGED.
  • Added a unique numerical target id to EVENT_EFFECT_CHANGED to separate units with the same name. This unique id persist as long as the client knows about the unit.
  • Added unique numerical source and target ids to EVENT_COMBAT_EVENT. This unique id persist as long as the client knows about the unit.

Currency
Changed the API for currencies (gold, alliance points, tel var stones) to allow for more generic handling. The vast majority of existing functions for dealing with currencies (e.g. GetCurrentMoney(), GetAlliancePoints()) have been left intact. However, we have added new functions like GetCarriedCurrenyAmount which takes a currency type. We have also added functions to deal with Tel Var stones for Imperial City.

Added:
  • GetCarriedCurrencyAmount(currencyType) – amount.
  • GetBankedCurrencyAmount(currencyType) – amount.
  • DepositCurrencyIntoBank(currencyType, amount).
  • WithdrawCurrencyFromBank(currencyType, amount).
  • DepositCurrencyIntoGuildBank(currencyType, amount).
  • WithdrawCurrencyFromGuildBank(currencyType, amount).
  • GetGuildBankedCurrencyAmount (currencyType) – amount.
  • GetBankedTelvarStones() – amount.
  • DepositTelvarStonesIntoBank(amount).
  • WithdrawTelvarStonesFromBank(amount).
  • LootCurrency(currencyType)
  • GetLootCurrency(currencyType) – unownedCurrency, ownedCurrency.
Changed:
  • GetStoreEntryInfo no longer supplies a currency id, icon, or name. These are now derived from the currency type.
  • GetStoreCurrencyTypes no longer returns usesBattleTokens or usesItems, and now also returns usesTelvarStones.
Removed:
  • GetItemCurrencyQuantity was removed because item currencies were removed.

Display Names
Added display names to a number of functions and events that previously only had character names.

Imperial City
Added support for the Imperial City. Includes new functions for dealing with Tel Var stones. Use GetImperialCityCollectibleId() with IsCollectibleUnlocked(collectibleId) to determine if the player has access to Imperial City.

Added:
  • GetTelvarStoneBankingFee() – bankingFee.
  • GetTelvarStoneMinimumDeposit() – minDeposit.
  • GetTelvarStoneMultiplierThresholdIndex() – the index of the current threshold.
  • GetTelvarStoneThresholdAmount(thresholdIndex) – minimum amount of stones to get at that threshold.
  • GetTelvarStoneMultiplier(thresholdIndex) – multiplier on stone gains.
  • IsMaxTelvarStoneMultiplierThreshold(thresholdIndex) – isAtMaxThreshold.
  • DoesCurrentZoneHaveTelvarStoneBehavior() – telvarBehaviorEnabled.
  • GetCampaignRulesetImperialAccessRule(rulesetId) – accessRuleType.
  • GetNumTelvarStonesLost() – returns the number of stones lost on the most recent death.

Champion
Moved a lot of the pending point maintenance for Champion into the client to allow client systems a better view of what is happening. Mostly, the Champion class in Lua has had the implementations of its pending points management functions changed to calling client functions instead.

Added:
  • GetNumPendingChampionPoints(disciplineIndex, skillIndex) – numPendingPoints.
  • SetNumPendingChampionPoints(disciplineIndex, skillIndex, numPendingPoints).
  • HasAvailableChampionPointsInAttribute(attribute) – hasPoints.
  • WillChampionSkillBeUnlocked(disciplineIndex, skillIndex) – willBeUnlocked.
  • SetChampionIsInRespecMode(isInRespecMode) .
  • IsChampionInRespecMode() – isInRespecMode.
  • IsChampionRespecNeeded() – returns true if the pending point allocation would require a respect to achieve.
  • SpendPendingChampionPoints().

Cooldowns
Improved the cooldown control to allow more flexibility.

Added:
  • SetRadialCooldownClockwise(clockwise).
  • SetRadialCooldownGradient(startAlpha, angularDistance) which fades the cooldown over angularDistance radians from startAlpha to abs(1 – startAlpha).
  • SetRadialCooldownOriginAngle(originAngle).
  • SetDesaturation(desaturation) which applies to all cooldown types.
  • New cooldown type CD_TYPE_VERTICAL_REVEAL which reveals the texture instead of stretching it.

Register for Event Filters
Added the ability to filter out event calls in the client before they reach Lua. This provides a small performance benefit over using a conditional in the callback. It is useful for events that are fired very frequently (such as EVENT_COMBAT_EVENT). Either use EVENT_MANAGER:AddFilterForEvent(namespace, event, filterType, …) or control:AddFilterForEvent(event, filterType, …). These are the event filter types and their parameters:
  • REGISTER_FILTER_ABILITY_ID - abilityId
  • REGISTER_FILTER_COMBAT_RESULT - combatResult
  • REGISTER_FILTER_IS_ERROR
  • REGISTER_FILTER_IS_IN_GAMEPAD_PREFERRED_MODE
  • REGISTER_FILTER_POWER_TYPE – powerType.
  • REGISTER_FILTER_UNIT_TAG – unitTag.
  • REGISTER_FILTER_UNIT_TAG_PREFIX – unitTagPrefix.
  • REGISTER_FILTER_VIBRATION_FILTER – filter cutoff.

Scripted Events
Added a more complete and consistent API for scripted events.

Added:
  • GetNumScriptedEventInvites() – numInvites.
  • GetScriptedEventInviteIdFromIndex(eventIndex) – eventId.
  • GetScriptedEventInviteInfo(eventId) – isValid, eventName, inviterName, questName, timeRemainingMS.
  • GetScriptedEventInviteTimeRemainingMS(eventId) – timeRemainingMS.
  • AcceptWorldEventInvite(eventId)
  • DeclineWorldEventInvite(eventId)
  • RemoveScriptedEventInviteForQuest(questName)
  • EVENT_SCRIPTED_WORLD_EVENT_INVITE_REMOVED.

Mouse Buttons
Added a new enumeration for mouse buttons called MOUSE_BUTTON_INDEX so you no longer have to use the numbers directly:
  • MOUSE_BUTTON_INDEX_INVALID
  • MOUSE_BUTTON_INDEX_LEFT
  • MOUSE_BUTTON_INDEX_RIGHT
  • MOUSE_BUTTON_INDEX_MIDDLE
  • MOUSE_BUTTON_INDEX_4
  • MOUSE_BUTTON_INDEX_5
  • MOUSE_BUTTON_INDEX_LEFT_AND_RIGHT

Guild
Added:
  • GetGuildInfo(guildId) – numMembers, numOnlineMembers, leaderName.
  • GetGuildMemberIndexFromDisplayName (displayName) – member index.

Miscellaneous
Functions
  • Added:
    • GetUnitDisplayName(unitTag) – displayName.
    • InsertNamedActionLayerAbove(layerName, existingLayerName).
    • HasActivatableSwapWeaponsEquipped() – canSwapWeaponSets which returns if the player has two set that they can swap between (doesn’t have only one weapon set filled).
    • Some more information to GetItemLinkOnUseAbilityInfo, GetItemLinkTraitOnUseAbilityInfo, and GetItemLinkTraitInfo to handle items whose on use effects scale over a level range.
    • GetAvAKeepsHeld(campaignId, alliance) – keepsHeld.
    • IsItemLinkBook(itemLink) – isBook.
    • GetRecallCurrency(nodeIndex) – currencyType for handling recalling to nodes that have Tel Var stone costs.
    • IsWerewolfSkillLine(skillType, skillLineIndex) – isWerewolfSkillLine.
    • GetCollectibleUnlockStateById(collectibleId) – unlockState.
    • GetCollectibleName(collectibleId) – name.
    • IsCollectibleUnlocked(collectibleId) – isUnlocked.
    • GetAchievementRewardCollectible(achievementId) – hasRewardOfType, collectibleId.
    • GetMaxVeteranRank().
    • AnimationObjectTranslate ::GetAnchorIndex() – anchorIndex.
    • AnimationTimeline:: GetPlaybackLoopsRemaining() – loopsRemaining.
    • AnimationTimeline:: SetPlaybackLoopCount(maxLoopCount).
    • LabelControl::SetMaxLineCount(maxLineCount).
    • LabelControl::GetNumLines() – numLines.
  • Changed:
    • GetClassInfo(classId) now also returns gamepad icons.
    • HasAnyJunk(bagId) to also take a boolean flag to control whether stolen items are included.
    • Added return to GetAlchemyItemTraits(reagentBagId, reagentSlotIndex) for cancelling traits.
    • Added returns to GetEmoteInfo(emoteIndex) for display name and is shown in gamepad UI.
Events
  • Added:
    • EVENT_ACTION_SLOT_ABILITY_USED
    • EVENT_BANKED_TELVAR_STONES_UPDATE
    • EVENT_GROUP_INVITE_ACCEPT_RESPONSE_TIMEOUT
    • EVENT_HIGH_FALL_DAMAGE
    • EVENT_JUSTICE_BEING_ARRESTED
    • EVENT_LOW_FALL_DAMAGE
    • EVENT_PLAYER_REINCARNATED
    • EVENT_PLAYER_STUNNED_STATE_CHANGED
    • EVENT_RIDING_SKILL_IMPROVEMENT
    • EVENT_SPAM_WARNING
    • EVENT_TELVAR_STONE_UPDATE
    • EVENT_ALL_GUI_SCREENS_RESIZED
    • EVENT_ALL_GUI_SCREENS_RESIZE_STARTED
  • Changed:
    • EVENT_END_CRAFTING_STATION_INTERACT to now pass the crafting skill of the interaction that just ended.
    • EVENT_SCREEN_RESIZED to return the name of the gui that just finished resizing.
Script Handlers
  • Added:
    • OnTextureLoaded which is fired when a texture control has loaded its file into memory.
Jessica Folsom
Senior Community Manager (English) - The Elder Scrolls Online
Facebook | Twitter | Twitch | Tumblr | Instagram | YouTube | Support
Staff Post
  • Atropos
    Atropos
    ✭✭✭✭
    Awesome, thanks to the UI team for putting these together and thank you for getting them posted so expediently :)
    Creator - Tamriel Foundry
    Author - Foundry Tactical Combat
    Guild Master - Entropy Rising
    Noob - Twitch streamer.
  • Sublime
    Sublime
    ✭✭✭✭
    Do those changes allow to create an addon that reads a targets CSP?
  • Dominoid
    Dominoid
    Community Ambassador
    Full Difference Check Between 100011 and 100012

    https://www.diffchecker.com/naeyr4su
  • ZOS_JessicaFolsom
    ZOS_JessicaFolsom
    Community Manager
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    Jessica Folsom
    Senior Community Manager (English) - The Elder Scrolls Online
    Facebook | Twitter | Twitch | Tumblr | Instagram | YouTube | Support
    Staff Post
  • kungmoo
    kungmoo
    ✭✭✭
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    think he means "CPs" :smiley:
    Some men are alive simply because it is against the law to kill them. -Edward W. Howe
  • Kyoma
    Kyoma
    ✭✭✭
    How will the ability/effect changes work with things like Liquid Lightning (aka abilities that aren't directly targeting a mob or casted on yourself)? Will they actually appear as a self-buff?
    Will I be able to forget all the wounds that pierce my flesh?
    You and your childish justice. I'll rip it to pieces.
    Come on, it's showtime. A rain of blood like a volcano
    And now I'll blow all of you and you and you...
    All to tiny pieces. All to tiny pieces.
  • Sublime
    Sublime
    ✭✭✭✭
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    Sorry, I always write CSP instead of CPs. :(
  • ZOS_ChipHilseberg
    ZOS_ChipHilseberg
    ✭✭✭
    Kyoma wrote: »
    How will the ability/effect changes work with things like Liquid Lightning (aka abilities that aren't directly targeting a mob or casted on yourself)? Will they actually appear as a self-buff?

    Liquid Lightning is an area of effect spell that ticks damage over time, which would not have a debuff.
    Staff Post
  • ZOS_ChipHilseberg
    ZOS_ChipHilseberg
    ✭✭✭
    Sublime wrote: »
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    Sorry, I always write CSP instead of CPs. :(

    The answer right now is no, that information is not available for anyone but yourself. I can propose the idea, however. This would be to determine how powerful a target is in PvP?
    Staff Post
  • Sublime
    Sublime
    ✭✭✭✭
    Sublime wrote: »
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    Sorry, I always write CSP instead of CPs. :(

    The answer right now is no, that information is not available for anyone but yourself. I can propose the idea, however. This would be to determine how powerful a target is in PvP?

    For me yes, would really help to see if a need an ally to take on an opponent or if I can take him/her solo.
  • Enodoc
    Enodoc
    Community Ambassador
    @ZOS_JessicaFolsom @ZOS_ChipHilseberg Regarding GetImperialCityCollectibleId() and IsCollectibleUnlocked(collectibleId), assuming the latter returns Boolean; does this just count for the Crown Store-purchased Imperial City, or does it also work for the ESO Plus-based access?
    Edited by Enodoc on July 29, 2015 12:28PM
    UESP: The Unofficial Elder Scrolls Pages - A collaborative source for all knowledge on the Elder Scrolls series since 1995
  • GTech_1
    GTech_1
    ✭✭✭✭
    Sublime wrote: »
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    Sorry, I always write CSP instead of CPs. :(

    The answer right now is no, that information is not available for anyone but yourself. I can propose the idea, however. This would be to determine how powerful a target is in PvP?

    Please do not expose this info. It will be used to gauge PvE "competence" for gold pledges, etc., just like people in other games use "gear score".
    Pro-tip: don't do it. ;)
  • ZOS_ChipHilseberg
    ZOS_ChipHilseberg
    ✭✭✭
    Enodoc wrote: »
    @ZOS_JessicaFolsom @ZOS_ChipHilseberg Regarding GetImperialCityCollectibleId() and IsCollectibleUnlocked(collectibleId), assuming the latter returns Boolean; does this just count for the Crown Store-purchased Imperial City, or does it also work for the ESO Plus-based access?

    IsCollectibleUnlocked will return true for both store purchased and ESO Plus.
    Staff Post
  • Carter_DC
    Carter_DC
    ✭✭✭
    Sublime wrote: »
    Sublime wrote: »
    Do those changes allow to create an addon that reads a targets CSP?

    Forgive the potentially dumb question, but what does CSP stand for?

    Sorry, I always write CSP instead of CPs. :(

    The answer right now is no, that information is not available for anyone but yourself. I can propose the idea, however. This would be to determine how powerful a target is in PvP?

    Yup, since the veteran system is meant to disappear, there would be no option to see the actual "level" of a player.
    CP rank information is a must have.
    High Kinlady Estre was right ! Hail to the Veil !
    Fr AD Guild Arkadium.
  • Carter_DC
    Carter_DC
    ✭✭✭
    current "obsolete" addons don't seem to be able to either save or load the saved variables.
    (every saved variables file is actually empty)
    but i don't see any changes in the saving functions in the new documentation.
    High Kinlady Estre was right ! Hail to the Veil !
    Fr AD Guild Arkadium.
  • Enodoc
    Enodoc
    Community Ambassador
    Enodoc wrote: »
    ZOS_JessicaFolsom ZOS_ChipHilseberg Regarding GetImperialCityCollectibleId() and IsCollectibleUnlocked(collectibleId), assuming the latter returns Boolean; does this just count for the Crown Store-purchased Imperial City, or does it also work for the ESO Plus-based access?
    IsCollectibleUnlocked will return true for both store purchased and ESO Plus.
    That's great, thanks!
    Carter_DC wrote: »
    current "obsolete" addons don't seem to be able to either save or load the saved variables.
    (every saved variables file is actually empty)
    but i don't see any changes in the saving functions in the new documentation.
    I don't have saved variables working for anything, apart from possibly the ZO_ settings. I'm assuming that's a bug. Does updating the API version in the add-on fix the issue for you?
    UESP: The Unofficial Elder Scrolls Pages - A collaborative source for all knowledge on the Elder Scrolls series since 1995
  • Carter_DC
    Carter_DC
    ✭✭✭
    nope, i changed the api version to 100012 on a addon that has no updated functions, and still, saved variables files are empty.
    copying them from the live server just results in them being wiped out.
    High Kinlady Estre was right ! Hail to the Veil !
    Fr AD Guild Arkadium.
  • Carter_DC
    Carter_DC
    ✭✭✭
    Chip Hilseberg replied to that point on the esoui forums. So this is a bug and it will be fixed.

    http://www.esoui.com/forums/showpost.php?p=22359&postcount=18
    High Kinlady Estre was right ! Hail to the Veil !
    Fr AD Guild Arkadium.
  • Dermestes
    Dermestes
    ✭✭
    Will these changes make it possible to see if the player is standing in an AOE either beneficial or damaging? I would like to have a warning about standing in AoE come up but can't seem to find anything that works in the current EVENT_COMBAT_EVENT.
  • SpAEkus
    SpAEkus
    ✭✭✭✭
    Well I tried a trick to fix the variables issue but it isn't 100% effective.

    I copied all my variables from Live into PTS and then made all the files read-only, except for ZOSInGame.lua.

    It worked for some but broke some others. I'm not going to waste any more time trying to test Template (the only VR14 Character I can have so far) or my Live Characters until this is fixed. Some of my addons are the only way to even see what the changes are in IC, whether just crafting data or basic damage and effects.

    Having my entire GUI blown up every time I just change characters is not worth the hassle.
  • Philgo68
    Philgo68
    ✭✭
    @ZOS_ChipHilseberg

    Is the SavedVariable reset issue being addressed in the PTS patch tomorrow? I would really like to test Master Merchant and have it ready for the 1.7 cut-over, but without the historically data I'm stuck.

    Thanks in advance for any insight you can provide.
  • Philgo68
    Philgo68
    ✭✭
    It was corrected in the latest PTS release.
  • Olivierko
    Olivierko
    ✭✭✭
    Any status on:

    - "EVENT_COMBAT_EVENT" seems to fire twice occasionally with the exact same data, noticed this when filtering out delivered killing blows.
    - "EVENT_UNIT_ATTRIBUTE_VISUAL_ADDED" *_REMOVED, *_UPDATED, regarding desynced "shield"/"health" information.
    - Custom chat channels for communication between add-ons as asked here.


    Cheerio
    Addons:PointificatorRaidificator

    1. Dar'diov ★ AvA 25 ★ Nightblade
    2. Tig'ger ★ AvA 9 ★ Dragonknight
    3. Ba'bushka ★ AvA 28 ★ Sorcerer
    4. Hails-To-Putin ★ AvA 18 ★ Templar
    5. Ba'boon ★ AvA 13 ★ Sorcerer

    6. PC EU ★ Aldmeri DominionYoutube
  • Enodoc
    Enodoc
    Community Ambassador
    @ZOS_ChipHilseberg I see there's a function GetCampaignRulesetNumImperialKeeps() which seems to return the total number of keeps required to gain access to IC according to that particular campaign ruleset (let's call that number y); is there a function that returns the current number of controlled Imperial Keeps per faction (call it x) so you could create a dynamic "Keeps Owned/Keeps Required" (or x/y) output? Thanks!
    UESP: The Unofficial Elder Scrolls Pages - A collaborative source for all knowledge on the Elder Scrolls series since 1995
  • ZOS_ChipHilseberg
    ZOS_ChipHilseberg
    ✭✭✭
    The number of keeps required to have access to imperial city depends on the access type returned from GetCampaignRulesetImperialAccessRule(rulesetId):

    IMPERIAL_CITY_ACCESS_RULE_TYPE_MAJORITY_KEEPS
    IMPERIAL_CITY_ACCESS_RULE_TYPE_NATIVE_KEEPS
    IMPERIAL_CITY_ACCESS_RULE_TYPE_NATIVE_KEEPS_PLUS_ONE
    IMPERIAL_CITY_ACCESS_RULE_TYPE_EVERYONE

    GetAvAKeepScore(campaignId, alliance) should return the necessary keep ownership info to evaluate if it would pass the rule (or to do your x/y).
    Staff Post
  • trimsic_ESO
    trimsic_ESO
    ✭✭✭✭✭
    ESOTU UI API Patch Notes (Version 100012)
    These patch notes highlight the larger changes to the ESOTU API. For the full, updated API, please take a look at the newest version of the ESOTU UI documentation.

    Combat and Effect API Changes
    Before:
    • No information on effects that last less than 30 seconds.
    After:
    • Addons will now receive information on effects shorter than 30 seconds as long as they affect the player or were cast by the player.
    Can you please elaborate? Is it now possible to create an auto-purge add-on?

    Millenium - Daggerfall Covenant Europe - FR
    VR14 R31 Stamina DK - melee DPS / support
    Guild Leader Millenium TESO
  • pppontus
    pppontus
    ✭✭✭✭✭
    ESOTU UI API Patch Notes (Version 100012)
    These patch notes highlight the larger changes to the ESOTU API. For the full, updated API, please take a look at the newest version of the ESOTU UI documentation.

    Combat and Effect API Changes
    Before:
    • No information on effects that last less than 30 seconds.
    After:
    • Addons will now receive information on effects shorter than 30 seconds as long as they affect the player or were cast by the player.
    Can you please elaborate? Is it now possible to create an auto-purge add-on?

    Addons can't cast skills, so no.
  • Enodoc
    Enodoc
    Community Ambassador
    The number of keeps required to have access to imperial city depends on the access type returned from GetCampaignRulesetImperialAccessRule(rulesetId):

    IMPERIAL_CITY_ACCESS_RULE_TYPE_MAJORITY_KEEPS
    IMPERIAL_CITY_ACCESS_RULE_TYPE_NATIVE_KEEPS
    IMPERIAL_CITY_ACCESS_RULE_TYPE_NATIVE_KEEPS_PLUS_ONE
    IMPERIAL_CITY_ACCESS_RULE_TYPE_EVERYONE

    GetAvAKeepScore(campaignId, alliance) should return the necessary keep ownership info to evaluate if it would pass the rule (or to do your x/y).
    @ZOS_ChipHilseberg That's great, thanks! Does GetAvAKeepScore() count all keeps by alliance, or just Imperial keeps? If the Access Rule was NATIVE_KEEPS, and say DC owned five of those (Rayles, Warden, Glademist, Aleswell, Dragonclaw), and also owned Chalman and Brindle, they would have 7 keeps, but only 5/6 needed for Imperial City access (which would be what I would like to show with x/y). Thanks!
    UESP: The Unofficial Elder Scrolls Pages - A collaborative source for all knowledge on the Elder Scrolls series since 1995
  • RDMyers65b14_ESO
    RDMyers65b14_ESO
    ✭✭✭✭✭
    Please do NOT make there be a way for people to be able to see champion points. It is no one else's business how many points someone has but that player. It doesn't matter on 'taking an enemy down' as if you are low health, you are gonna die no matter how many points you have.
  • Philgo68
    Philgo68
    ✭✭
    @ZOS_ChipHilseberg
    Add-ons
    Very large Saved Variable files from add-ons will no longer crash when writing to a file.

    Does this mean a single Saved Variables file from an add-on can reliably hold more than 64mb of data? I never personally had a "crash", but the file would just become corrupted as it saved more than 64mb. This is the reason Master Merchant uses a bunch of mule add-ons to hold all the data.

    Thanks,

    Philgo68
Sign In or Register to comment.