promotional bannermobile promotional banner

CombatAnalytics

CombatAnalytics is a combat session tracking addon for World of Warcraft: Midnight

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