• v6 3fe9ed86b8

    v6 Stable

    brues released this 2026-09-14 19:21:34 +00:00 | 7 commits to main since this release

    TwitchEmotes

    v6 (2026-09-14)

    Full Changelog Previous Releases

    • Mirror releases to the Gitea instance, by hand
      A Gitea pull mirror replicates commits and tags only, so the mirror's Releases
      page shows bare tags with nothing to download. ClassicAPI's mirror-release
      workflow pushes the notes and attachments over through Gitea's API; this is
      that workflow pointed at brues/TwitchEmotes.
      Manual only: workflow_call is dropped, so a release does not trigger it and
      nothing else calls it. Run it from the Actions UI with a tag, or with the tag
      blank to backfill every release.
      Needs its own MIRROR_TOKEN secret on this repo before the first run.
    • Draw the stats window with art 1.12 actually ships
      Neither texture it asked for exists on this client, and ClassicAPI ships no
      art of its own. UI-DialogBox-Background-Dark is a later addition -- 1.12 has
      only the un-suffixed UI-DialogBox-Background -- and ItemSocketingFrame is TBC,
      so the featured emotes' border was cropped out of a sheet whose folder isn't
      there at all.
      UI-Quickslot2 is the obvious stand-in for that border, but its hole is ~55% of
      the texture, so a 70px emote needs a 128px ring and runs into the title above
      and the caption below. It is a small backdrop frame instead, styled like the
      autocomplete popup, which keeps the 86/70 sizing. The emote moves onto that
      frame to draw above the backdrop; topSentTex/topSeenTex keep their names, so
      the animator still finds them.
    • Add a README
    • Pack animation sheets as tall strips
      ClassicAPI's texture dimension gate lifts the two limits the sheet layout was
      built around. A sheet skinnier than 16:1 drawing nothing was never a client
      rule -- VanillaHelpers grew the texture recycle pool to 6x6 but left the index
      stride at 5, so a 32x1024 strip collided with a 64x32 bucket and was handed
      back the wrong texture. And power-of-two is no longer required, since the gate
      grows the decode scratch to fit.
      So a run wraps into columns only when it outgrows the scratch at 32 frames, and
      a sheet is sized to its frames exactly: 20 frames is a 32x640 strip rather than
      64x1024. The 128 frame budget is unchanged, and older sheets still play -- the
      animator reads the column count off the sheet.
    • Set changelog-title
    Downloads