4.4 KiB
coa-omen
CoA-patched fork of Omen3
3.0.9 (the version Ascension's Bronzebeard realm ships in
Interface/AddOns/Omen/). Adds class-color entries for the 21
Ascension custom classes plus the HERO archetype, so the threat-meter
bars render in a class-tinted color instead of falling back to the
generic neutral fill.
What we changed
| File | Type | Why |
|---|---|---|
CoAClassColors.lua |
new | Merges 22 CoA file_string entries into _G.RAID_CLASS_COLORS (and _G.CUSTOM_CLASS_COLORS if !ClassColors is loaded). Vanilla 10 are left untouched. |
Omen.toc |
edit | Loads CoAClassColors.lua before Omen.lua. Version bumped to 3.0.9-coa1. |
.gitattributes |
new | * -text — preserves upstream CRLF so future merges from Curse stay tidy. |
Omen.lua itself is unchanged. The bug we're fixing is in
Omen.lua:1629 —
(dbBar.UseClassColors and (RAID_CLASS_COLORS[class] or (class == "PET" and dbBar.PetBarColor))) or
— where class is the second return of UnitClass(unit), i.e. the
ChrClasses.dbc file_string. For CoA classes that's PROPHET /
MONK / FLESHWARDEN / etc., none of which exist in stock
RAID_CLASS_COLORS, so the lookup is nil, the and/or chain
collapses, and every CoA-class bar gets dbBar.BarColor regardless
of UseClassColors. We just populate the table — no Omen logic
changes needed.
Class color table
The 22 added file-strings are below. The CoA names on the right are
the in-game display names (slugs at db.exil.es/class/<slug>); the
file-strings on the left are what UnitClass() actually returns.
| file_string | CoA class | Hex |
|---|---|---|
| HERO | (all-class) | #FFD100 |
| BARBARIAN | Barbarian | #C1666B |
| WITCHDOCTOR | Witch Doctor | #80C7B1 |
| DEMONHUNTER | Felsworn | #A330C9 |
| WITCHHUNTER | Witch Hunter | #B8B0A0 |
| STORMBRINGER | Stormbringer | #4ED9FF |
| FLESHWARDEN | Knight of Xoroth | #5C2E73 |
| GUARDIAN | Guardian | #4A9D59 |
| MONK | Templar | #00FFBA |
| SONOFARUGAL | Bloodmage | #AA1F1F |
| RANGER | Ranger | #5E8C3A |
| CHRONOMANCER | Chronomancer | #D68A3A |
| NECROMANCER | Necromancer | #4D7A5A |
| PYROMANCER | Pyromancer | #FF6A00 |
| CULTIST | Cultist | #7A40B8 |
| STARCALLER | Starcaller | #79C8D6 |
| SUNCLERIC | Sun Cleric | #F2C14E |
| TINKER | Tinker | #C47C4F |
| PROPHET | Venomancer | #B8D246 |
| REAPER | Reaper | #6E3A8A |
| WILDWALKER | Primalist | #8B6F47 |
| SPIRITMAGE | Runemaster | #6FB6E0 |
The colors are sensible thematic defaults, not extracted from the
client. To override them for one player, drop a !ClassColors config
in (the addon is already an OptionalDep of Omen). To override globally
in this fork, edit CoAClassColors.lua.
Deploying
rsync -a --delete --exclude=.git --exclude='README*.md' \
/home/sub/repos/coa/coa-omen/ \
/srv/add01/wow-ascension/Interface/AddOns/Omen/
Then in-game: /reload (or full client restart). Confirm with the
Bartender4-style version check — open Omen options, the title bar
should read Omen3 3.0.9-coa1.
Verifying in-game
/run print(RAID_CLASS_COLORS["PROPHET"] and RAID_CLASS_COLORS["PROPHET"].colorStr or "missing")
Should print ff followed by the hex of #B8D246 (i.e.
ffb8d246). Repeat for any custom class. If a key prints missing,
either CoAClassColors.lua didn't load (check the addon list) or
the file-string was different from what's in the table.
To dump every class color the client knows about:
/run for k,v in pairs(RAID_CLASS_COLORS) do print(k, v.colorStr) end
Merging upstream
Stock upstream Omen has a * text=auto .gitattributes that
normalises CRLF; we override with * -text so future merges don't
produce noise diffs.
git remote add upstream https://github.com/Nevcairiel/Omen.git
git fetch upstream
git merge --no-ff upstream/master
…then resolve Omen.toc (preserve our ## CoA patches ## block at
the bottom) and commit.
Repo
- Gitea: https://git.sub-net.at/Exiles/coa-omen
- Default branch:
master(Sub-Net Gitea pre-receive hook rejectsmain).