LibExtendedSavedVars (103)
Here’s a draft ESOUI page description, written in BBCode (ESOUI’s description field uses it). Copy-paste and adjust to taste it covers everything the guidelines we went through this session call for: no dependencies to disclose, the trademark disclaimer, no AI-disclosure line (per your standing waiver, since you wrote/verified the code yourself), and a developer-facing pitch since the actual “users” of a library are other addon authors.
“`bbcode
LibExtendedSavedVars
A genuine MegaServer-wide saved-variables scope, on top of the usual per-character and per-account
options with runtime switching between all three, and no dependencies of its own.
Why this exists
Neither the built-in ZO_SavedVars nor LibSavedVars can share settings across different
@AccountName logins on the same PC both always partition data by account, even in their
“account-wide” modes. LibExtendedSavedVars adds a third scope that isn’t partitioned by account at
all:
Character this specific character only.
Account shared by every character on the current @account.
MegaServer shared by every account and character that has used the addon on this
world/PC.
Switching scopes at runtime doesn’t discard existing values anything still at its default in the
new scope is filled in from whatever the previous scope currently held.
For addon authors
This is a library, not a standalone addon it has no window or settings of its own. Add it as a
dependency and call one constructor:
## DependsOn: LibExtendedSavedVars>=103
MyAddon.settings = LibExtendedSavedVars.NewTieredSavedVars(
“MyAddon_Data”, — matches your ## SavedVariables: entry
1, — version (reserved for future use)
“Settings”, — namespace
MyAddon.Defaults, — defaults table
LIBEXTENDEDSAVEDVARS_SCOPE_CHARACTER — default scope for first-time players
)
From there, read and write settings exactly like a normal ZO_SavedVars table
(`MyAddon.settings.someKey`). A built-in helper (`:GetLibAddonMenuScopeDropdown()`) generates a
ready-made “Settings Scope” dropdown for LibAddonMenu-2 panels, localized for English, French,
German, Japanese and Russian.
Full API and usage examples: see the README bundled with the download.
Dependencies
None. LibExtendedSavedVars has zero dependencies of its own.
Technical note
The MegaServer scope isn’t built on ZO_SavedVars at all (ZO_SavedVars can’t express an
account-independent scope) it manages its own saved-variable table structure directly, keyed by
world name.
This Add-On is not created by, affiliated with or sponsored by ZeniMax Media Inc. or its
affiliates. The Elder Scrolls and related logos are registered trademarks or trademarks of ZeniMax
Media Inc. in the United States and/or other countries. All rights reserved.
“`
A few things to fill in / decide yourself before posting:
– **`>=103`** in the `DependsOn` example keep this in sync with whatever `AddOnVersion` is current when you actually publish (it’s `103` as of this session’s last bump).
– The **Changelog tab** (separate from this description) should get your release notes, newest first not duplicated here.
– If you want a screenshot/demo section, ESOUI supports image embeds I left that out since a saved-vars library has nothing visual to show.

