No description
Find a file
Florian Berthold f19ff36733 Harden Altoholic frames against partial alt records (no-value char getters)
DataStore char-based getters return *no value* for any module that hasn't
scanned a given char (DataStore.lua: 'if not arg1.lastUpdate then return end').
Fresh CoA alts have partial per-module data, so the frames crashed feeding
'no value' into format()/concat/arithmetic/pairs. Guarded every such site:
AccountSummary, Activity, BagUsage, Quests, Reputations, TabCharacters,
DrawCharacterTooltip, recipe tooltip. No DataStore contract change.
2026-05-28 23:45:09 +02:00
.gitea/workflows ci: respect GITHUB_REPOSITORY + tolerate per-asset upload failures 2026-05-25 12:16:07 +02:00
_img added img 2025-03-24 16:03:04 +01:00
Altoholic Harden Altoholic frames against partial alt records (no-value char getters) 2026-05-28 23:45:09 +02:00
Altoholic_Achievements chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Achievements chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Auctions chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Characters coa.3: guard XP getters in DataStore_Characters for partial records 2026-05-28 22:40:04 +02:00
DataStore_Containers chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Crafts chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Currencies chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Inventory coa.2: guard CoA data shapes (custom classes, comm-seeded records, ungeared chars) 2026-05-28 22:16:44 +02:00
DataStore_Mails chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Pets coa.2: guard CoA data shapes (custom classes, comm-seeded records, ungeared chars) 2026-05-28 22:16:44 +02:00
DataStore_Quests chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Reputations chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Skills chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Spells chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Stats chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
DataStore_Talents chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
tools ci: respect GITHUB_REPOSITORY + tolerate per-asset upload failures 2026-05-25 12:16:07 +02:00
.gitattributes chore: flatten Altoholic-Addon/ wrapper + add standard .gitignore/.gitattributes 2026-05-25 10:59:24 +02:00
.gitignore ci: add Gitea Actions release workflow (per-addon git-archive zip) 2026-05-25 12:00:16 +02:00
README.md coa.3: guard XP getters in DataStore_Characters for partial records 2026-05-28 22:40:04 +02:00

wow-Altoholic-dev

Altoholic: modified development for WotLK

CoA fork (Exiles)

Ported for the Ascension CoA (Vol'jin) 3.3.5a client by the Exiles guild. Released as *-coa.N tags via Gitea Actions; see Exiles/coa-altoholic.

  • 3.3.002b-coa.3 — More partial-record guards in DataStore_Characters (own alts seen via guild comm but never fully scanned):
    • GetXPRate — guard nil/zero XPMax (crashed AccountSummary; also fixes div-by-zero at max level).
    • GetRestXPRate — guard nil/zero XPMax and nil lastLogoutTimestamp (nil ~= 0 was true and crashed).
  • 3.3.002b-coa.2 — Defensive guards for CoA data shapes (custom classes, records seeded from guild comm before a full scan, ungeared chars). Fixes login/UI crashes:
    • DataStore_InventoryGetAverageItemLevel returns 0 instead of nil (crashed the Altoholic char sort and AccountSummary iLvl format); guarded the login AIL broadcast and the 0/0 average for ungeared chars.
    • DataStore_PetsGetNumPets returns 0 for an unscanned companion table instead of assert-crashing TabCharacters.
    • DataStore_CharactersGetColoredCharacterName tolerates a nil name (records known only via guild comm).
    • Altoholic/Characters.luaGetLineType returns nil for a stale/out-of-range line id (caller already handles it) instead of indexing a nil row.
  • 3.3.002b-coa.1 — Initial CoA packaging (Altoholic + Altoholic_Achievements + 16 DataStore modules).

Added "Keys" Tab for better overview of owned keys and some attunement quests.

Changes

The new "Keys" tab

  • Edited Version 1.0
    • Added "Keys" tab: will show various relevant keys or attunement quests per character in order to enter instances or allow for quicker entry.
    • Items in "Currencies" tab are now sorted by item id
    • Added button to "DataStore" options to ignore Addon-Communication from the Rising-Gods starter guilds
    • Fixed various "Source tooltip" entries (specifically for Ulduar)
    • Fixed various links between recipes and crafting spells
    • The "Hearthstone" will no longer be counted per character (as everyone has it)
    • Removed deDE mistranslation of "Mail"
    • Characters in the horizontzal tab are now sorted by average item level

The new "Keys" tab

Pretty Pictures

Key item, that requires a questline

Mouseover Key Label Mouseover Character Item

Key, that is a questline

Mouseover Key Label Mouseover Character Item

Key, that requires reputation

Mouseover Key Label Mouseover Character Item

Optional Key, for quick instance entry

Mouseover Key Label Mouseover Character Item