promotional bannermobile promotional banner

Forever Combat Style

Tune WoW Forever's floating damage numbers with a live preview: Retail or Classic style, size, gravity, spread, direction, start height and your own scrolling text. Works with Blizzard's built-in combat text
Back to Files

1.0.1

File nameForeverCombatStyle-1.0.1.zip
Uploader
_rootkit_rootkit
Uploaded
Nov 9, 2026
Downloads
84
Size
684.5 KB
Flavors
RetailForever
File ID
9529073
Type
R
Release
Supported game versions
  • 12.1.0
  • 1.60.1

What's new

lightweight tag 16d24b5e3ccbd02b6598fc13e789196493dfbbcc 1.0.1
Author:    GitHub <noreply@github.com>
Date:    Mon Nov 9 18:43:55 2026 +0200

commit 3eccb3419c9c330ec2d99e6cb079f2dfb947f719
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Mon Nov 9 18:42:52 2026 +0200

    Bump

commit 3eccb3419c9c330ec2d99e6cb079f2dfb947f719
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Mon Nov 9 18:42:52 2026 +0200

    Bump

commit 2cc47079b57e8d596b0ea15040e51d74ef47f283
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Sun Nov 8 23:53:43 2026 +0200

    Remove the preview, add Live mode, read defaults from the client

    The in-window preview is gone (Preview.lua, the Hide/Show strip, the stage
    height drag, and their strings in all ten locales). The real numbers are
    Blizzard's own 3D world text with no published formulas, and none of the
    simulated versions looked like the game.

    Live mode (Live.lua): while a setting changes the window fades to about 15%
    and a chip next to the cursor shows the setting and its value. It stays
    faded while the mouse button is down and for 1.5 s after the last change.
    It can be turned off under General > Behaviour.

    Client defaults: Reset Defaults now writes what GetCVarDefault reports, and
    falls back to the table in Core.lua only where the client cannot say. The
    table's values differ from the Retail list for Hit height, Crit height,
    Spread and Directional movement. /fcs debug lists the live value, the client
    default and the fallback for every CVar, plus a few start-position CVars the
    addon does not control.

    Also: old preview settings are dropped from the saved variables, the style
    note and Minimum opacity descriptions no longer mention a preview, the TOC
    notes lose "live preview", and the README is rewritten.

    Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

commit 8af947456bfa577302e57b5694aebaba1aec299d
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Sun Nov 8 19:29:40 2026 +0200

    Add Retail/Classic style cards, a resizable preview stage and an earlier fade

    Number style: the small Retail/Classic toggle is replaced by two large
    cards side by side. Retail is described as a smooth reveal, Classic as
    instant and direct, and a note under them says both styles are fully
    tweakable (Size and every Appearance slider apply to either). New
    layout:StyleCards widget; the cards keep equal heights in every language.

    Preview stage: it was a fixed 180px, so enlarging the window only ever
    widened it. Its height now follows the window (36% of the content, 230-440
    px) and can be dragged by the strip above it; the dragged height is saved
    as previewHeight and double-clicking the strip returns to automatic. The
    settings page always keeps at least 170px. The default window is 840x780.

    Preview timing: at the default Gravity (0.5) real numbers fade out before
    they start to fall, but the preview kept fading while they dropped about
    20px (Retail) to 55px (Classic). Numbers over a target now live 1.1s
    instead of 1.9s and start fading at 45% instead of 55%, so a Retail number
    is gone just before its peak. Higher Gravity still drops. The Taken column
    keeps its old timing (PLAYER_LIFETIME, PLAYER_FADE_START).

    The new text is translated in all ten locale files, and the README covers
    the cards, the stage and the timing.

    Checked with a mock-WoW harness only (layout in all ten languages, drag
    limits, card clicks, fade against arc); not yet confirmed in the game.
    Classic still shows a small (~4px) faint tail drop in the preview.

    Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

commit 6e69e1a8ccfd85932b9dc7293421cf2d0d07a5fd
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Sun Nov 8 17:47:46 2026 +0200

    Guard against blank text on the first open after a fresh game start

    The warning box, row descriptions and the Replay button label drew blank
    the first time the window opened after a fresh login, and fine after a
    /reload. That points at the client loading font files late, so text laid
    out before they were ready stayed blank. The exact cause is unconfirmed
    in game.

    - Re-lay all text at 0.3, 1.0 and 2.5 seconds after each open instead of
      once at 0.3. Passes left over from an earlier open are ignored.
    - Buttons set their font again on show, hover, enable, disable and mouse
      up, as PlateSCT's buttons do, and button labels are part of the
      window's re-lay pass.
    - /fcs debug now dumps the warning text, a row caption, a row
      description and the Replay label (font, size, color, alpha, measured
      size, parent state) so a blank label can be diagnosed.

    Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

commit 39b7c67ef3c51bf4445eb070bf48c71fd99f09dc
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Sun Nov 8 01:03:54 2026 +0200

    Fix CJK language names drawing as boxes and ESC not closing the window

    Korean and Chinese text drew as [] boxes: Source Sans 3 has no CJK
    glyphs, and STANDARD_TEXT_FONT is Latin-only on an English client, so
    there is no fallback. Pick the font by the language being drawn
    (Blizzard's 2002.TTF, ARKai_T.ttf and bLEI00D.ttf for koKR, zhCN and
    zhTW, Source Sans 3 otherwise) and draw each entry in the Language
    dropdown in its own script's font.

    ESC: register the live window under its global name explicitly, so a
    rebuild after a language change cannot leave ESC pointing at the old
    hidden frame, and close the dropdown whenever the window hides. The
    cause is unconfirmed in game; /fcs debug now prints whether the window
    is shown, listed for ESC and the frame behind its global name.

    Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

commit e87684f466deeecd19f0ba9d79b366763e2c1a2d
Author: Martin Spatovaliyski <mspatovaliyski@gmail.com>
Date:   Sat Nov 7 22:24:13 2026 +0200

    Add localization for ten languages, set up like PlateSCT

    Locales/Locale.lua is the registry (NS.L with fallback to English, then to
    the key). Locales/enUS.lua holds every string keyed by its English text,
    and frFR, deDE, esES, ruRU, itIT, ptBR, zhCN, zhTW and koKR carry the
    translations. Terms shared with PlateSCT reuse its wording.

    - General > Language dropdown (Auto follows the client); changing it
      rebuilds the window in place, keeping page and position
    - AI-translation notice with an Open Link popup for non-English languages
    - Korean and Chinese use the client font, whether the client or the
      setting asks for them
    - Page subtitle may wrap onto a second line for longer translations
    - Dropdown menu widget and Check icon ported from PlateSCT
    - ## Notes-xxXX lines in the TOC; README documents the setup

    Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

This mod has no additional files