Skip to content

Releases: dandwhelan/SpeakStone_Forever_Main

v2.0.5

Choose a tag to compare

@github-actions github-actions released this 29 Sep 10:19

SpeakStone Forever - Main

v2.0.5 (2026-09-29)

Full Changelog Previous Releases

  • Release 2.0.5: book text for the last 25 voiced pages (from the website's submissions)
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v2.0.3

Choose a tag to compare

@github-actions github-actions released this 29 Sep 07:16

SpeakStone Forever - Main

v2.0.3 (2026-09-29)

Full Changelog Previous Releases

  • Release 2.0.3: startup pack check knows Cataclysm Part 1/2 and Forever Chatter
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Settings pack check: Cataclysm_Part1/Part2 and SpeakStone_Forever_Chatter
    The v2.0.0 packs split Cataclysm below CurseForge's ~600 MB upload limit (413 above it),
    and WoW Forever gets a Chatter pack (gossip + books). The dashboard's list of expected
    packs names the new ones. Not released until the new packs exist on CurseForge.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v2.0.2

Choose a tag to compare

@github-actions github-actions released this 29 Sep 04:19

SpeakStone Forever - Main

v2.0.2 (2026-09-29)

Full Changelog Previous Releases

  • Release 2.0.2: book text for every voiced book
    BookTexts.lua rebuilt after the 2026-09-29 install: 746 books, 2,315 pages (was 353 / 1,120),
    so the Audio Library's book view shows the words of every newly voiced book.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v2.0.1

Choose a tag to compare

@github-actions github-actions released this 28 Sep 12:15

SpeakStone Forever - Main

v2.0.1 (2026-09-28)

Full Changelog Previous Releases

  • Release 2.0.1
    • Audio Library: Quests / Gossip / Books tabs. Books shows each book as a book:
      the page text, Page X of N, Prev/Next, Play page, Read book (turns pages on its own).
    • Settings: a "Play" section with Books / Gossip / Quests buttons.
    • Books keep reading after the window closes; opening a book reads the whole book;
      Play/Stop button on the book window; books that share a title get the right audio.
    • Quest lines keep playing after closing/accepting the quest and do not restart on reopen.
    • Wording: voices "similar to the in-game NPCs"; unofficial / not affiliated notice.
    • Forever: pack check expects Forever Audio Pack 1 + 2.
      Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Wording: voices "similar to the in-game NPCs", add unofficial / not-affiliated notice
    Owner, 2026-09-28: align public copy with the CurseForge-safe wording already
    used on the CurseForge project pages. Player-facing text only says the voices are
    similar to the in-game NPCs (Forever: characters, not a generic narrator), never
    how they are made, and always carries "Unofficial; not affiliated with Blizzard
    Entertainment."
    Also fixes the settings dashboard pack check for WoW Forever: the live set is
    SpeakStone_Forever_Audio_Pack1 + Pack2, not the retired Audio_Part1-4, so a
    Forever player with both packs was told packs were missing.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 19:40

SpeakStone Forever - Main

v2.0.0 (2026-09-27)

Full Changelog Previous Releases

  • Release 2.0.0
    Release day. Brings the first-start tutorial with settings profiles, the
    audio pack prompt, and voice race/sex in the Audio Library, to the same
    version number on retail and Forever, matching the v2.0.0 tag.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #3 from dandwhelan/claude/voice-info-sex-only
    Audio library: voice race/sex from packs, plus tutorial follow-ups
  • Tutorial: reposition when already open, and when Settings opens
    Still overlapped for the owner after the last fix, because the placement
    code never ran. The tutorial now opens at login, so it is usually already
    visible when the player opens Settings or clicks Profiles. Show() on a
    visible frame doesn't fire OnShow, and Settings appearing on top moved
    nothing.
    Placement is now addon.PlaceTutorial(). It is called from OnShow, from
    ShowTutorial() after Show(), and from a hook on Settings' OnShow, so all
    three ways the two windows meet end with them side by side.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Tutorial: pick a side of Settings that fits, or make room
    Anchoring the tutorial to Settings' left still overlapped on the owner's
    screen: Settings sits near the left edge, so there was no room, and the
    clamp-to-screen rule pushed the tutorial back over it. It now goes left if
    it fits, else right. If neither fits, Settings slides over so the two sit
    side by side, centered.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Tutorial: show until actually closed, and open beside Settings
    The owner never saw the tutorial. It set tutorialDone the moment it
    tried to show, so anything that hid it at login used up its one
    appearance: his saved variables had tutorialDone = true and a profile
    applied, and he had seen nothing.
    It is now marked done only when the player closes it. Hiding the whole UI
    (Alt+Z, a cinematic) fires the same OnHide and doesn't count. The flag is
    now tutorialVersion, so players left with the old tutorialDone see it once,
    and bumping TUTORIAL_VERSION re-shows it after adding a page.
    Opened from the Profiles button it covered the Settings window. It now
    anchors to Settings' left; the Audio Library already takes the right.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Audio library: show a sex-only voice code as "Male"/"Female"
    The pack builder emits a bare "M" or "F" when the NPC's race in the ledger
    is not a real race name (model-folder names like Dragonspawn2Caster, or
    blank). About a quarter of shipped clips are like that. DescribeTag split
    the empty race code off and produced " male", with a leading space and
    lower case. It now labels those "Male"/"Female", and search still keeps
    "male" from matching female voices.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Audio library: take voice race/sex from each audio pack, drop extra addon
    Packs pass optional voice info as a third argument to
    SpeakStone_RegisterSoundPack (or entry.voice in the pending queue).
    No separate Load-on-Demand addon.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Audio library: show and search voice race/sex from a load-on-demand addon
    SpeakStone_VoiceInfo is a LoadOnDemand addon loaded the first time the
    audio library opens. Rows show the voice (e.g. Human male), tooltips
    show it per clip, and the search box matches race and sex words.
    Ships sample data until the voice pipeline generates the real file.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Tutorial: only default to Full Narration on a fresh install
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Tutorial: add Help SpeakStone grow page, default to Full Narration, show once
    Page 5 covers lending your voice (record in browser or upload) and
    submitting captured quests, NPC talk, books and items via
    speakstone.beanw.co.uk, with a capture toggle and export button.
    Closing the tutorial without picking a profile applies Full Narration.
    tutorialDone is saved when the tutorial opens, so it only appears once.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Merge pull request #2 from dandwhelan/claude/audio-pack-prompt-rldj3a
    Audio pack prompt + first-start tutorial with settings profiles
  • Turn debug messages off by default
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Add first-start tutorial with premade settings profiles
    Five profiles (Full Narration, Story Only, Blizzard First, Manual,
    Helper/Tester), a setup wizard shown once on first login, a Profiles
    button in settings, and /ss tutorial | /ss profiles.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Audio pack prompt: show once, add copyable CurseForge link
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16
  • Prompt players with no audio packs to get them from CurseForge
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session\_016NzkE42P4mnfrrAd3eLX16

v1.6.3

Choose a tag to compare

@github-actions github-actions released this 24 Sep 20:30

SpeakStone Forever - Main

v1.6.3 (2026-09-24)

Full Changelog Previous Releases

  • Release 1.6.3: instance secret-value fix, lower memory use
    Rebuilt from retail main 1.5.3 (build_forever_main.py), titles and NPC
    names rebuilt with the Forever harvest; X-Curse-Project-ID kept.
    • Fix a Lua error in instances (seen in Proving Grounds): UnitSex("npc")
      can return a WoW 12.x secret number, and comparing it tainted and threw.
      It is now pcall-wrapped and treated as unknown when secret, like the
      GUID/name/race guards beside it.
    • Cut memory: the settings dashboard built the full per-quest audio index
      (~35k rows) just to show three counts, and kept it all session. It now
      counts without keeping the rows, and the Audio Library builds its index
      on open and releases it on close. The base addon measured 26 MB before.
    • Gossip capture debug now says why a line was not recorded (already
      captured, already voiced, already exported).
      Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v1.6.2

Choose a tag to compare

@github-actions github-actions released this 24 Sep 16:24

SpeakStone Forever - Main

v1.6.2 (2026-09-24)

Full Changelog Previous Releases

  • Release 1.6.2 to CurseForge
    Bump to 1.6.2 so the release is newer than the existing tags, and set
    X-Curse-Project-ID so BigWigs packager knows which CurseForge project
    to upload the tagged build to.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v1.5.2

Choose a tag to compare

@github-actions github-actions released this 23 Sep 21:54

SpeakStone Forever - Main

v1.5.2 (2026-09-23)

Full Changelog Previous Releases

  • Release 1.5.2: today's settings and harvester work
    Ships the 2026-09-23 changes to settings and the harvester (NPC chat
    capture, per-character capture index, sent-line hashes so exports stop
    resending everything) together with VoicedLines.lua, which the .toc now
    loads. The Forever fork is regenerated from the same code by
    build_forever_main.py, with its own QuestTitles/NPCNames from the Forever
    harvest.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v1.5.1

Choose a tag to compare

@github-actions github-actions released this 23 Sep 10:45

SpeakStone Forever - Main

v1.5.1 (2026-09-23)

Full Changelog Previous Releases

  • Settings panel: show missing packs, drop standalone Harvester, new defaults
    The Voice Packs card listed installed pack names, which ran off the card
    and answered the wrong question. It now compares against the full expected
    set (retail expansion packs, or the four Forever audio parts) and says either
    "All voice packs installed" or exactly which packs are missing. The
    suppressed-gossip line is gone; players do not need to know about it.
    The standalone SpeakStoneHarvester addon is retired. Capture is owned by this
    addon alone and no longer stands down when that addon is loaded; its leftover
    saved variables are still merged on export so nothing recorded with it is lost.
    Labels: CAPTURED -> YOUR CAPTURES; "Auto capture quest text to help voice
    missing quests"; the debug-messages toggle moves to the Contribute section.
    Defaults (owner's call): Blizzard voice lines silenced, debug messages on,
    wait before speaking 1.0s (the unreleased 0.5 -> 1.5 migration now targets 1.0).
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 21 Sep 21:11

SpeakStone Forever - Main

v1.5.0 (2026-09-21)

Full Changelog Previous Releases

  • Restore release tooling and Forever harvest data that the regenerated 1.5.0 build dropped; bump only the version to 1.5.0
  • SpeakStone Forever Main v1.5.0, regenerated from SpeakStone_Main 1.5.0
  • Initial SpeakStone Forever - Main, generated from SpeakStone_Main 1.4.7
    Generated by tools/build_forever_main.py from the retail payload at
    SpeakStone_Main 1ff8abff, rather than forked by hand, so a fix to the
    shared Lua reaches both builds on the next regeneration.
    Differs from retail in exactly three places: Interface 16001, the Title,
    and SavedVariables renamed to SpeakStone_ForeverMainDB in the .toc and in
    all 90 Lua references. The flavour needs no patch: since 1.4.7
    Harvester.lua reports 'forever' for any interface in 16000-16999, and the
    build script refuses to run if that band stops covering 16001.
    QuestTitles.lua and NPCNames.lua are rebuilt with the Forever harvest
    (37,203 titles, 13,397 NPC names). SoundLengths.lua is empty; the Forever
    packs carry the index.
    Co-Authored-By: Claude Opus 5 noreply@anthropic.com