Skip to content

0.2

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Sep 22:33
· 32 commits to main since this release

The group frames. 0.1 said "no group or raid frames, and no range fading, which
belongs with them" — the party half of that is what this release is.

The party column

Built on the client's own SecureGroupHeaderTemplate, not on four fixed
frames: the client creates the children, assigns their units and re-sorts them,
in combat as well as out of it. That the header still works without
loadstring_untainted was measured before anything was built on it — the flag
is about compiling a snippet yourself, which nothing here does.

Each member carries what every other frame in this addon carries, sized for a
row 33 pixels tall:

  • The portrait column and class color at the edge, the same two principles
    the single frames follow.
  • A debuff row under the frame. Icons at 14 pixels rather than the 26 a
    single frame uses, each on the slim line the client colors by dispel type —
    what is dispellable is the information, and that line already carries it. How
    many icons is asked rather than chosen: fourteen of them with their spacing
    are exactly as wide as the frame, so the row ends where the frame ends. No
    duration label, because at that size it covers the icon it belongs to.
  • A cast bar, full width, spell name at the left and the time at the right.
  • The role each member signed up as, left of the name, drawn with the
    client's own icon — tank, healer and damage alike. The space is reserved in
    every row whether or not there is an icon in it, so the names stay in one
    column when somebody re-queues.
  • Range fading, the sixth design principle, seen working inside an
    instance. oUF gates its own element on party membership, which is why it
    waited for the header rather than being half-built on the single frames.

Dragged by a mover of its own rather than by the header, because what a secure
header does with a child that is not one of its unit buttons is not something
this addon has measured. Unlocking shows four stand-ins in its place — real
frames on party1..party4, not boxes of the same size, so what you place is
the thing itself.

/uuf group umbra puts the client's own group panel away and /uuf group both
brings it back. Default is both: the panel carries the raid markers and the
way out of a group, and the column is placed to clear it rather than to replace
it.

Elsewhere

  • /uuf health class colors the health bar by the unit — class for a
    player, reaction for everything else — and /uuf health plain puts it back
    to the one neutral green. The bar is muted to 60% so that the numbers on it
    stay legible: the text is near-white, and so are priest white, rogue yellow
    and monk green. The fade is the fill's alpha rather than the color, because
    dimming a class color means arithmetic on three numbers that are secret
    inside an instance. The 3-pixel edge stays at full strength.
  • A portrait no longer waits four seconds for a model the client refused.
    Since 12.0.5 Model:SetUnit takes no unit token for a unit with a secret
    identity, so that is the question asked now. Measured both directions on the
    same character minutes apart: the target and the target-of-target in the
    clear with models outside an instance, secret with none inside, and a party
    member inside the same instance in the clear and loading — so the instance
    was never the condition, only a place that meets it.
  • The target-of-target frame no longer throws on every model change in the
    world.
    oUF asks the client for permission to compare two unit tokens and
    treats a yes as a guarantee; inside a delve the permission comes back in the
    clear and the comparison comes back hidden anyway, which cost 716 errors in
    one run.
  • The measurements moved behind /uuf dev. The list someone reaches for
    when they have forgotten a command should be about the frames. The old names
    answer with their new address rather than with the whole list.

Slash commands

/uuf layout classic · modern the whole arrangement
/uuf auras umbra · both who shows your buffs and debuffs
/uuf health class · plain what colors the health bars
/uuf group umbra · both who shows your party
/uuf unlock · lock · reset move the frames, per layout set
/uuf dev … the measurements: check, party, header, test, debug

What is not in it

  • No configuration interface. The layout set, the dragged positions and the
    four switches above are the only saved state.
  • No raid frames. The header can do them; what is new there is the
    arrangement — forty people with subgroups and sorting.
  • No Clique support beyond the OptionalDeps line in the TOC.
  • No pets of group members, and no interrupt marking on cast bars.
  • Written and not yet seen in the client: a real damage absorb, which
    needs a shielded unit to point at.

Clients

Verified on Retail 12.1.5, including the party column, its debuffs, the cast
bars and the role icons inside a five-man dungeon.

One package covers both clients. The attached zip carries both TOC files
and release.json declares every interface they answer for — 120100 and 120105
for Retail, 16001 for the WoW: Forever beta — so an addon manager picks the
right one by itself.

The group header has not been run on Forever. Everything else in 0.1 loaded
and drew there; this release's headline feature is unmeasured on that client,
and /uuf dev header is the one command that would settle it.

Forever writes its saved variables and never reads them back, so settings
do not survive a reload there. That is the beta, not the addon.

The full list of changes is in CHANGELOG.md, and the reasoning behind each of
them is in docs/development.md.