File Details
1.2-release
- R
- Mar 21, 2026
- 359.26 KB
- 9
- 12.0.1
- Retail
File Name
CombatAnalytics-1.2-release.zip
Supported Versions
- 12.0.1
tag ef0512d81da0b50bd8468eebdd9c87b93ae7df8a 1.2-release
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Date: Sat Mar 21 22:15:42 2026 +0200
Fixes and improvements
commit a449b33fa74b4f4e19c9d91a9f352e33e6784706
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 21:59:41 2026 +0200
feat(seed): Battle.net spec meta + PvP talents seed data
scripts/fetch_bnet_seed.py:
- Authenticates with Battle.net Game Data API (client credentials)
- Fetches all 40 specs: name, role (DAMAGE/HEALER/TANK), class name,
classFile (DEATHKNIGHT etc.), and spec icon file_data_id
- Fetches all 407 PvP talents: spell ID, name, full description,
cast time, and compatible slot numbers
- Runs both fetches concurrently (configurable --workers)
- Caches raw JSON to data/raw/ for inspection and offline reruns
- Generates SeedSpecMeta.lua and SeedPvpTalents.lua
seed/generated/SeedSpecMeta.lua (new — 40 specs):
- Official spec names, roles, class IDs, classFile strings, and
iconFileDataId for fallback icon resolution in the addon
seed/generated/SeedPvpTalents.lua (new — 40 specs × ~10 talents):
- Every PvP talent per spec with spellId, name, full in-game
description, castTime, and slot numbers
- spellId works with C_Spell.GetSpellInfo for icon lookup in the UI
StaticPvpData.lua:
- Loads seedSpecMeta and seedPvpTalents from GeneratedSeedData
- Exposes SPEC_META and PVP_TALENTS table references
- Adds GetSpecMeta(specId) and GetPvpTalentsForSpec(specId) accessors
CombatAnalytics.toc:
- Loads SeedSpecMeta.lua and SeedPvpTalents.lua after SeedCounterTips
.github/workflows/update-seed-data.yml:
- Adds fetch_bnet_seed.py step before the legacy blizzard scripts
- Runs weekly on Monday alongside murlok.io counter-tip refresh
refactor(seed): consolidate all raw JSON under seed/raw/
- Move data/raw/ → seed/raw/ so all seed assets (raw JSON + generated
Lua) live under one directory tree
- Update fetch_bnet_seed.py and fetch_counter_data.py to write cache
files to seed/raw/ instead of data/raw/
- Update GitHub Actions workflow to diff/add seed/ (covers both raw
and generated subdirectories)
- Remove data/raw/ from repository
"overrides" JSON files are expanded to be full data sources:
- seed/raw/dummy_catalog_overrides.json → all 10 training dummy entries
- seed/raw/spec_archetypes.json → all 40 specs with archetypes/threatTags
- seed/raw/spell_intelligence_overrides.json → full 159-spell catalog
The script also regenerates SeedSpecMeta.lua and SeedPvpTalents.lua from
their bnet_* cached JSONs, so all 5 generated seed files stay in sync.
GitHub Actions workflow gains a final "Regenerate seed Lua from JSON sources"
step that runs after all fetch scripts, ensuring the committed Lua always
matches seed/raw/. Any data edit is now a one-file JSON change.
Release v1.2
commit ad751617978fd8a8901d313ef5d52f7b4ef0ac42
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 19:57:21 2026 +0000
chore(seed): auto-update seed data 2026-03-21
commit 38457e1dcea864306c0bab6d23e8efa3341e9739
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 19:54:00 2026 +0000
chore(seed): auto-update seed data 2026-03-21
commit 345ab7cd6f88b331f5d2697dfe574c723db42c27
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 21:32:36 2026 +0200
feat: counters page rework, minimap toggle, rating backfill + bug fixes
Counter Guide (UI/CounterGuideView.lua):
- Full graphical rework: spec icon, class-coloured name, threat/win-rate
bars, DR-family pills, spell icon grid, counter strategy cards,
interrupt priority, safe windows, murlok.io global win rate
- Fix hideElements: WoW UI objects are userdata, not table — type check
was silently skipping all cleanup, letting elements accumulate
- Fix ccFamilies DR pills: guide.ccFamilies is an array of
{spellId, family} objects; pairs() returned integer indices; now
correctly extracts unique family name strings (mirrors SuggestionsView)
- Fix spell grid yPos double-advance: captured spellGridTop before loop
so row offsets are always relative to the grid's starting position;
yPos now advanced once after the loop using numRows calculation
MatchupDetailView (UI/MatchupDetailView.lua):
- Same ccFamilies fix: extract family strings from {spellId,family} array
Minimap toggle (Constants.lua, Core.lua, SettingsPanel.lua):
- showMinimapButton defaults to true (on by default)
- /ca minimap toggles visibility with confirmation print
- Blizzard Settings panel shows live status and a Toggle Minimap button
Rating backfill (CombatTracker.lua):
- At PVP_MATCH_INACTIVE, backfill ratingSnapshot from score API
and fall back to scoreInfo.rating + ratingChange when needed
Counter seed data:
- seed/generated/SeedCounterTips.lua with curated tips, interrupt
priority, safe windows, and murlok.io win rates per spec
- scripts/fetch_counter_data.py fetches live murlok.io data and
regenerates the Lua seed file
- .github/workflows/update-seed-data.yml: weekly auto-refresh on Monday
06:00 UTC, commits changed seed files back to main
StaticPvpData / StrategyEngine:
- GetCounterTips() accessor added; static tips merged into guide actions;
interruptPriority, safeWindows, murlokWinRate surfaced from seed
commit adf7290ef3ef6698d1618330be0934157353ab58
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 21:15:56 2026 +0200
chore(seed): auto-update seed data 2026-03-21
commit 1ec0be9f11cefbfa58dd6099c65546b7a9861c19
Author: Lazar Dilov <ldilov@yahoo.com>
Date: Sat Mar 21 20:50:24 2026 +0200
REstructured release notes

