Shadowed Unit Frames
SUF focuses on a simple configuration while maintaining the flexibility that most users will care about, preventing unnecessary bloating of the addon that sacrifices performance. While you aren't going to be able to set the health bar to be exactly 3.14 pixels outside of the unit frames, you can change options you actually care about such as bar height, ordering, frame height and so on. To speed up configuration, you can configure multiple units at the same time through the global configuration. For example, if you want to set the height of the Player, Target, Focus and Party frames to 50 then the height of Target's Target, Target's Target of Target, Focus Target to 30 you can easily do this by changing two options instead of having to do it seven times.
However, should you need a little bit of extra configuration do not despair! An advanced option is included that will unlock additional configuration giving finer control over the configuration.
Shadowed Unit Frames in WoW Classic
There is in-development Beta versions available for WoW Classic!
Note that WoW Classic does not provide all the information that you might be used to:
- There is no Focus Frame
- Information about the HP of enemies is not available, and they'll show as 100 HP
- Cast Bars for anyone but the player himself are not available
- Debuffs have no duration information
Some of this data can be restored with additional libraries/addons, but it'll always be guesswork and potentially inaccurate. Shadowed Unit Frames comes bundled with LibClassicDurations for debuff durations. Mob HP can be provided by Real Mob Health, which you need to install manually.
Note on copying your layout from Retail to Classic:
In general you cannot copy your layout between the two versions, since they are quite different, and doing so will result in certain elements exclusive to one version (like Pet Happiness on Classic) not always working properly. There are some provisions in the code that makes copying from Retail to Classic mostly work, use at your own risk - however, never copy a Layout from Classic to Retail, this will absolutely result in the Class-specific power bars and other elements not available on Classic to cease to function.
Slash commands: /shadoweduf (/suf)
Anchoring
Are you driven crazy by your party frames not aligning up exactly with your player frames, even if it's only half a pixel off? The anchoring system will let you solve all alignment issues, by allowing you to anchor a frame to another and set a simple offset from the frame it is anchored to, or by manually setting the X/Y position of the frame.
Using the screen shot as an example, if you drag the player frame the other frames will move with the player frame preserving the alignment and spacing. Each frame can still be manually positioned wherever you want, but this gives you a way of easily anchoring and moving frames around without having to use a ruler.
Zone configuration (Disabling options/units by zone type)
Units and modules can be enabled or disabled based on the type of zone you are in. For example, if you want to see party targets and party pets while you are in an arena but nowhere else then you can use the visibility options to enable it only while inside an arena. Modules can also be disabled by zone type, if you want to see party auras while in a raid instance but nowhere else you can disable the module in raid instances only.
Profiles do not have to be swapped and it is all automatic.
Units
Supports unit frames are as follows:
Player: Player, Pet, Pet Target
General: Target, Target of Target, Target of Target of Target, Focus, Focus Target
Party: Party, Party Pets, Party Targets, Party ToT
Raid: Raid, Raid Pet, Main Tank, Main Tank Target, Main Assist, Main Assist Target, Boss, Boss Target, Boss ToT, Main Assist ToT, Main Tank ToT
Arena: Arena, Arena Target, Arena Pets, Arena ToT
Battleground: Battleground, Battleground Target, Battleground Target
Features
- Tags: Includes a simple tagging system that can be customized in virtually any way using Lua, even if something isn't included by default odds are you can make the tags
- Incoming Heals: Supports the Blizzard Events for incoming heal data, no external libraries needed
- Auras: Can be set to only show auras you casted, or can cast on others. Can enlarge auras that you casted, and hide the cooldown ring on the timers of auras you didn't cast as well to make it more obvious which ones you casted and which ones you didn't
- Aura Timers: You will need a mod such as OmniCC to show timers on buffs and debuffs
- Aura Indicators: Display colored squares or icons for certain auras on any unit
- Fader: Fades frames when out of combat and inactive (100% mana/no target)
- Class Power (Eclipse, Holy Power, etc): Supports all of the class power features from Eclipse to Burning Embers.
- Highlighting: Border highlighting of frames based on mousing over them, curable debuffs, aggro or you are targeting/focusing them
- Range Checking: Fades frames out that are out of range of you
- Exportable Layouts: If you have a layout, or your friend has a layout you want to try out you can export/import SUF layouts by going to /suf -> Layout Manager
- Profiles: You can change from any profile to another one without reloading your UI, should you want to use a completely different layout based on zone you can easily switch profiles without hassle
Pretty much all the general unit frame settings are in, health bars, cast bars, power bars, portraits, indicators and so on.
Modules
Basic module support is included, should you be interested in building a module see the documentation on github for more information.
Feedback
For feature requests and bug reports, please continue to use the Ticket tracker. Feel free to ask on the thread first, if you're unsure what to do!
You never included the error, the error is the relevant part.
@Shadowed
With your recent update, the empty bar on Target now displays the color of the NPC/Player I last clicked on, when set to NPC only and Color By Class. If I click on a shaman, the empty bar displays the blue shaman classcolor as it should, but if I click lets say on a horde npc after I click on a warlock, the empty bar still displays the blue shaman class color instead of a hostile red color. Get what I am saying? Is that intented or a bug?
http://imageshack.us/photo/my-images/843/wowscrnshot113012235408.jpg/
37x ShadowedUnitFrames-v3.7.3-3-gad623a7\modules\empty-Empty.lua:35 Usage: UnitIsTappedByAllThreatList("unit")
<in C code>
ShadowedUnitFrames-v3.7.3-3-gad623a7\modules\empty-Empty.lua:35 in function "?"
ShadowedUnitFrames-v3.7.3-3-gad623a7\modules\units.lua:34 in function "FullUpdate"
ShadowedUnitFrames-v3.7.3-3-gad623a7\modules\units.lua:374 in function "CheckUnitStatus"
ShadowedUnitFrames-v3.7.3-3-gad623a7\modules\units.lua:216 in function <ShadowedUnitFrames\modules\units.lua:213
<in C code>
FrameXML\SecureStateDriver.lua:83 in function <FrameXML\SecureStateDriver.lua:73
FrameXML\SecureStateDriver.lua:137 in function <FrameXML\SecureStateDriver.lua:119
Locals:
self = <table> {
OnDisable = <func> @ShadowedUnitFrames\modules\empty.lua:13
moduleHasBar = true
OnLayoutApplied = <func> @ShadowedUnitFrames\modules\empty.lua:17
moduleKey = "emptyBar"
moduleName = "Empty bar"
UpdateColor = <func> @ShadowedUnitFrames\modules\empty.lua:31
OnEnable = <func> @ShadowedUnitFrames\modules\empty.lua:5
}
frame = SUFUnittargettarget {
0 = <userdata>
OnEnter = <func> @ShadowedUnitFrames\modules\units.lua:669
UnregisterAll = <func> @ShadowedUnitFrames\modules\units.lua:134
castBar = <unnamed> {}
registeredEvents = <table> {}
timeElapsed = 0.083021777682006
RegisterNormalEvent = <func> @ShadowedUnitFrames\modules\units.lua:60
SetVisibility = <func> @ShadowedUnitFrames\modules\units.lua:245
topFrameLevel = 5
RegisterUpdateFunc = <func> @ShadowedUnitFrames\modules\units.lua:107
SetBlockColor = <func> @ShadowedUnitFrames\modules\units.lua:182
unitType = "targettarget"
SetRangeAlpha = <func> @ShadowedUnitFrames\modules\units.lua:170
visibility = <table> {}
indicators = <unnamed> {}
unitInitialized = true
unitRealType = "targettarget"
unit = "targettarget"
ReregisterUnitEvents = <func> @ShadowedUnitFrames\modules\units.lua:39
unitGUID = "0xF1310B0B00000041"
hasStateWatch = false
SetBarColor = <func> @ShadowedUnitFrames\modules\units.lua:178
fontStrings = <table> {}
emptyBar = <unnamed> {}
highFrame = <unnamed> {}
OnLeave = <func> @FrameXML\UnitFrame.lua:215
powerBar = <unnamed> {}
UnregisterSingleEvent = <func> @ShadowedUnitFrames\modules\units.lua:84
DisableRangeAlpha = <func> @ShadowedUnitFrames\modules\units.lua:162
healthBar = <unnamed> {}
fullUpdates = <table> {}
UnregisterUpdateFunc = <func> @ShadowedUnitFrames\modules\units.lua:124
menu = <func> @ShadowedUnitFrames\modules\units.lua:403
BlizzRegisterUnitEvent = <func> =[C]:-1
unitRealOwner = "target"
FullUpdate = <func> @ShadowedUnitFrames\modules\units.lua:31
RegisterUnitEvent = <func> @ShadowedUnitFrames\modules\units.lua:101
unitOwner = "targettarget"
}
color = nil
reactionType = "npc"
fallbackColor = <table> {
b = 0
g = 0
r = 0
}
I'm not going to revert it without good reason. What you described sounds more like a bug, but you aren't very clear on what you're trying to say.
Please revert the empty bar color to what it was before. My empty bar for Target was set to NPC only and color by class. That ment that enemy npcs empty bar would display red, friendly npc green and neutral npc yellow. With this update, it displays the last class color I click on, meaning if I clicked on a druid, the enemy npc empty bar display orange as in druid class color.
Go into the "Profiles" tab in /suf and it'll let you reset the profile or swap to a new fresh one.
@Shadowed
Is there any way to reset the UI? I have check every option, but still cannot figure out what's wrong with it.
I just checked and it's definitely working still, so not much I can tell you except you probably did something.
Hey, I have click check on show income heals, 130%, on both myself and target, but I cannot see the incoming heals as before. Before 5.1, it works, however after new patch. it doesnt work now.
I would guess it's another addon causing it unless you can make it happen with just SUF enabled.
I've never seen anyone report that issue, and SUF doesn't touch anything near the action bars.
I keep getting errors like the one below, and when they occur blizzards frames, or part sof them IE combo points, Show back up and i have to do a full log out and in to reset it bac to normal. But they tend to bug out within minutes of me entering combat again
And its not just the one listed function its trying to call. I have seen everything from raid frames to player frames to pet frames etc etc. sometimes getting as many as 9 different erros like this one at once.
Any ideas? It only occurs when I have SUF enabled.
This image shows how only certain parts are becoming re shown after the error occurs, notice in the top left the combo points dots that are normally aorund the blizzard frames are now showing back up after it happens.
http://i.imgur.com/bF98d.jpg
347x [ADDON_ACTION_BLOCKED] AddOn "ShadowedUnitFrames" tried to call the protected function "MultiBarLeft:originalHide()". !BugGrabber-r189\BugGrabber.lua:587: in function <!BugGrabber\BugGrabber.lua:587> <in C code> FrameXML\FrameLocks.lua:90: in function <FrameXML\FrameLocks.lua:66> FrameXML\FrameLocks.lua:101: in function <FrameXML\FrameLocks.lua:94> FrameXML\FrameLocks.lua:116: in function "Hide" FrameXML\MultiActionBars.lua:63: in function "MultiActionBar_Update" FrameXML\ActionBarController.lua:160: in function "ValidateActionBarTransition" FrameXML\ActionBarController.lua:127: in function "ActionBarController_UpdateAll" FrameXML\ActionBarController.lua:53: in function <FrameXML\ActionBarController.lua:42>
Locals: nil
Should be fixed
Monk chi not showing up in the secondary power bar with 5.1.
Hi, is there a way to make the little menu from Blizzard raid UI always appear on top of suf ? It has always been doing so, but I change my player frame and put it in the middle of my screen, since then, the little raid/party menu (to put signs, rdy check, etc.) is always hidden behind suf frames when I open it... That's really annoying, can someone help me ? :)
Hi, Just wanna check , why is it that when i enable Shadowed unit frame. the challenge mode timer will be block. when I disable the addon, timer will appear. Anyway i can work around this to enable the timer and use this addon?
LOL i love you Shadowed
Rehide Blizzard frames if they are shown while disabled without tainting them. Accounts for poorly done addons that forcibly show frames like VuhDo and HealBot
Nilvalue: Thanks, your way isn't quite how I want to fix it, but I'll have a fix up in a bit that is the equivalent to what you did.
Exorti: Odds are you need to reset your SUF profile, and if you played on a private server then I can't help you at all on that. Odds are whatever issues you are running into are either related to an old SV or private servers.
Rangecheck bug solved
I modify some lines in ShadowedUnitFrames\modules\range.lua and now its working well..
Before
if( spell ) then frame:SetRangeAlpha(IsSpellInRange(spell, frame.unit) == 1 and ShadowUF.db.profile.units[frame.unitType].range.inAlpha or ShadowUF.db.profile.units[frame.unitType].range.oorAlpha) elseif( UnitInRaid(frame.unit) or UnitInParty(frame.unit) ) then frame:SetRangeAlpha(UnitInRange(frame.unit, "player") and ShadowUF.db.profile.units[frame.unitType].range.inAlpha or ShadowUF.db.profile.units[frame.unitType].range.oorAlpha) else frame:SetRangeAlpha(CheckInteractDistance(frame.unit, 4) and ShadowUF.db.profile.units[frame.unitType].range.inAlpha or ShadowUF.db.profile.units[frame.unitType].range.oorAlpha) end
After
if( spell ) then frame:SetRangeAlpha((IsSpellInRange(spell, frame.unit) == 1 or CheckInteractDistance(frame.unit, 4)) and ShadowUF.db.profile.units[frame.unitType].range.inAlpha or ShadowUF.db.profile.units[frame.unitType].range.oorAlpha) end
Hi, I find a bug about the rangecheck function: SUF cannot check the range between player and the friendly units who are unhealable or enermy units who are unattackable.
Hey! I'm back in the game after 1½ years and the first thing I did was to get SUF. But I currently have three problems.
1. Each time I click on a player/NPC, the game freezes up like a tenth of a second. 2. My target plate is just a black window. I can see my targets target and everything else except that. 3. When I unlock frames to configurate them, they get stuck in the unlocked position. It seems to randomly get stuck with some things in configuration mode.
It might be worth adding that during my time away from wow, I played some privateservers aswell, which the client I downloaded from arena-tournament.com. When I bought real wow two weeks ago it kind of merged the new real with the old one. Maybe thiis is a part of the problem?
PS. Great addon, really clean and nice!
Edit: If it's worth adding, I bought a battlechest that doesn't contain Cataclysm & MoP, havent bought those yet. so I only have up to the Lich King expansion.
I love this addon but, I'm having a problem. When I'm targeting a unit the border highlight of the frame does not work. When I open the config window and uncheck / recheck the border highlight options it works ( not for the boss frames though which is most important for me atm) until I lock the frames. Then, it stops working again. Sorry if my post is not very explanatory , my English is not that good. Is there anything I can do to help you understand better the problem? Thanks for this great addon.