G2A Online Shop
No ads? Support us with tips! Follow this link for more information!Support the website! Support Us!

Shadow & Light

Latest Update: Jan 11, 2017 06:33 AM

Shadow & Light is an external edit of ElvUI, which means it doesn't change ElvUI's files directly.
What does this mean to you?
It means that any time ElvUI gets updated, you will not have to worry about it overwriting our edited version of ElvUI. It also means if we push an update it will not mess with any ElvUI files. This addon can not be used without ElvUI installed and enabled.

Originally this project started as two personal edits of ElvUI by Darth Predator and I (Repooc). For technical support reasons and other reasons as well, we have moved to a combined effort on this external edit of the ElvUI. Shadow & Light does not disable or hinder the normal function of ElvUI but does add additional features that are not yet implemented or will not be added to ElvUI.
You'll find Shadow & Light options under it's own configuration category in ElvUI's config section by typing /ec

Due to a lot of things to take care of IRL we don't have a lot of time for working on S&L lately and regularly release new versions. Tickets are still fixed as fast as we can but sometimes we just don't have time for anything but simple fixing. Thus not releasing stuff for considerable time.
That's why we would suggest to keep an eye for alpha versions. Latest alpha is always available for download here.

- Ticket System

Download Locations:
- Tukui
- Wowinterface
- Curse

- Armory Mode Style Character & Inspect frame
- Go afk in style with our Afk feature
- Customize various texts including, Zone, Chat editbox, Mailbox
- Add Coordinates on the Minimap
- Show full values for Exp/Rep Bars.
- Customizable background panels.
- Additional datatext panels for those tha want to display more info
- Option to have S&L Handle Chat Datatext Panels to be docked below the chat windows
- Customizable size of chat history stored
- Customize Combat Icon position on player unitframe.
- Equipment Manager for ability to swap equipment sets based on zone/instance/spec, can even display equipment set name on items in your bags.
- Farmer Module for easier farm management.
- LFR progression in Time Datatext.
- Loot Announcer module adds ability to announce loot to selected channel
- Misc Custom UI Button (Quickly access ElvUI Config, ReloadUI, Toggle Move Anchors, Boss mod config/options (DBM, DXE, or Bigwigs), Addons Manager (stAddOnManager or ACP)
- Modified Installation Process (Includes settings that each of the authors play with and now includes Affinitii's UI.)
- Movable Pet Battle Actionbar
- Movable Raid Utility menu.
- PvP Auto Release
- Skinned Minimap buttons
- Skinned Raid Marker Bar

And a lot more

Additional features for ElvUI skins:
- Pet Battles
- Objective Tracker
- Merchant

Included Addons:
(if you have any of those the I'd recommend to disable them)
- UI buttons idea by Swordyy

Did we forget anyone? O_o

Techincal Support:
If you have any questions or concerns, we want to hear about it. You are welcome to post it via the Ticket System.

Darth Predator and I will do our best to address everyone's concern. We typically need some information from you other than the problem you are having. Before posting, PLEASE, make sure you are running the latest version of Shadow & Light as well as ElvUI and that you DISABLE ALL addons except for those two and try to reproduce the issue. It is important that you do that so we can narrow down what is causing the problem in the first place.

Information to provide when posting:
1.) Shadow & Light Version
2.) ElvUI Version
3.) Provide lua errors
4.) Provide a screenshot if possible
5.) Detailed description of the issue on when it happens, how it happens, whatever you did to reproduce it.
6.) Just to be clear, Disable ALL Addons except for ElvUI and Shadow & Light

With that said, happy gaming and enjoy the addon!
Creator/Author: Darth Predator
Version: 3.18
Changelog: Click here to see the changes!
Compatible: 7.1.5
RequiredDeps: ElvUI
Donate: Click here to donate!
Last Download: Jan 23, 2017 08:23 AM
Downloads: 157428
(376 Ratings) 

Screenshot of the Addon:




Posted by: Izzy  Posted on: Jan 14, 2017 04:49 PM

I use Altoholic, and after its most recent upate, the minimap icon no longer gets placed on the S&L minimap button bar. Here is the response from Altoholic's author regarding changes in the minimap button code, in case it is possible to incorporate this into the programming to accommodate. There are actually several minimap buttons I have noticed that don't get pulled onto the bar, which perhaps this would address.

"Long story short: I have started about 2-3 years ago to change the way frames are named into the add-on, in order to avoid polluting the global Lua namespace, so that ultimately everything is under a big object called Altoholic (so you have Altoholic.Something.Stuff.Whatever...).
When blizzard added the possibility to use the "parentKey" attribute, it offered the possibility to make better templates, and gave a lot of advantages, among others being able to not have to change a frame name constantly when it moves.
The minimap button used to be named, and parented to the frame called "Minimap".
Now It's still parented to "Minimap", but it uses a parentKey, so it's "Minimap.AltoholicButton", and not a full frame name. The maintainer of MBF should update it in order to support children frame that have no name (note: even Blizzard goes into that direction with their new UI elements).
Having a code that requires frames to be named can be extremely annoying. I faced this problem with my own code in the past, or when using some of Blizzard's Lua code. Ultimately, I ended re-making certain elements completely to avoid those problems.
I'm still not done converting all those elements from "named" to "parentKey", but I'm getting there.
I hope you understand why I won't be rolling back, it may seem trivial from a user's perspective, but from a coder's perspective, it's a zillion times easier to maintain code this way."
Posted by: Ra1dMaX  Posted on: Jan 13, 2017 05:28 PM

seems like the minimapbutton has some bug...after i updated the altoholic addon today its minimap button wont go into the minimap button bar

even tried to disable the mapbutton bar reloading then enabling it again and another reload without it wanting to snap into the buttonbar
Posted by: Gobe  Posted on: Dec 22, 2016 04:24 PM

Love the addon but get this lua error

360x ...s\RCLootCouncil\Libs\LibWindow-1.1\LibWindow-1.1-8.lua:128: attempt to perform arithmetic on a nil value
...s\RCLootCouncil\Libs\LibWindow-1.1\LibWindow-1.1-8.lua:128: in function `SavePosition'
Skada\BarDisplay.lua:599: in function
[C]: ?
[C]: in function `ApplySettings'
AddOnSkins_ElvUI\Core\Embed.lua:374: in function `EmbedWindow'
AddOnSkins_ElvUI\Core\Embed.lua:382: in function `Embed_Skada'
AddOnSkins_Skins\Skada-1.5-14.lua:68: in function
[C]: ?
[C]: in function `UpdateDisplay'
Skada\Skada-1.5-14.lua:1546: in function `StartCombat'
Skada\Skada-1.5-14.lua:1460: in function `?'
Skada\Skada-1.5-14.lua:42: in function

Posted by: kingahz  Posted on: Dec 07, 2016 06:46 PM

Love the addon but get this lua error after i installed it.

What is the "offline" module doing?

Date: 2016-12-07 19:42:09
ID: 1
Error occured in: Global
Count: 1
Message: ...face\AddOns\ElvUI_SLE\modules\unitframes\offline.lua line 14:
attempt to index field 'TextureParent' (a nil value)
...face\AddOns\ElvUI_SLE\modules\unitframes\offline.lua:14: Construct_Offline()
[C]: ?()
...rface\AddOns\ElvUI\Modules\unitframes\unitframes.lua:690: Update()
...rface\AddOns\ElvUI\Modules\unitframes\unitframes.lua:650: Update()
...rface\AddOns\ElvUI\Modules\unitframes\unitframes.lua:961: UpdateAllHeaders()
...rface\AddOns\ElvUI\Modules\unitframes\unitframes.lua:464: Update_AllFrames()
...rface\AddOns\ElvUI\Modules\unitframes\unitframes.lua:1115: ?()
[string "safecall Dispatcher[1]"]:4:
[string "safecall Dispatcher[1]"]:4
[C]: ?
[string "safecall Dispatcher[1]"]:13: ?()
...ibraries\CallbackHandler-1.0\CallbackHandler-1.0.lua:90: Fire()
self = {
SetDefaultModuleLibraries = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:398
Enable = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:325
UnregisterAllEvents = defined @Interface\AddOns\ElvUI\Libraries\CallbackHandler-1.0\CallbackHandler-1.0.lua:200
EnableModule = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:363
modules = {
GetModule = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:241
IterateEmbeds = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:473
defaultModuleLibraries = {
TestCombat = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\units\player.lua:33
SetRoleIcons = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\roleIcons.lua:56
specNameToRole = {
CombatTest = SLE_CombatIconTest {
baseName = "ElvUI_SLE"
ForUpdateAll = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\unitframes.lua:182
Update_GroupFrames = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\units\groupFrames.lua:10
PostCast = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:32
SetDefaultModulePrototype = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:440
powerbars = {
UpdateStatusBars = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:94
UpdateClass = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:80
name = "ElvUI_SLE_UnitFrames"
Initialize = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\unitframes.lua:146
IsEnabled = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:482
orderedModules = {
AuraHook = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:69
DisableModule = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:381
CombatTextures = {
BuildStatusTable = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:11
InitStatus = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:109
OfflineTextures = {
RegisterMessage = defined @Interface\AddOns\ElvUI\Libraries\CallbackHandler-1.0\CallbackHandler-1.0.lua:116
UnregisterMessage = defined @Interface\AddOns\ElvUI\Libraries\CallbackHandler-1.0\CallbackHandler-1.0.lua:179
Construct_Offline = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\offline.lua:12
UpdateRoleIcon = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\roleIcons.lua:17
PortraitUpdate = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\unitframes.lua:90
InitPlayer = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\units\player.lua:72
UpdateHealComm = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\unitframes.lua:130
IsModule = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:248
SendMessage = defined @Interface\AddOns\ElvUI\Libraries\CallbackHandler-1.0\CallbackHandler-1.0.lua:85
SetDefaultModuleState = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:418
RestedTextures = {
CastBarHook = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\statusbars.lua:37
SetEnabledState = defined @Interface\AddOns\ElvUI\Libraries\AceAddon-3.0\AceAddon-3.0.lua:455
HealthPredictUpdate = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\unitframes.lua:139
enabledState = true
UpdateRested = defined @Interface\AddOns\ElvUI_SLE\modules\unitframes\units\player.lua:47
RegisterEvent = defined @Interface\AddOns\ElvUI\Libraries\CallbackHandler-1.0\CallbackHandler-1.0.lua:116
UnregisterAllMessages =
Swatter, v5.21f.5579 (SanctimoniousSwamprat)
AddOnSkins, v3.45
AskMrRobot, v48
Auctionator, v4.0.16
BlizzMove, v
DBMCore, v7.1.4
DBMDefaultSkin, v
DBMStatusBarTimers, v
DebugLib, v5.1.DEV.337(/embedded)
Details, v
DetailsDmgRank, v
DetailsDpsTuning, v
DetailsEncounterDetails, v
DetailsRaidCheck, v
DetailsRaidInfoEmeraldNightmare, v
DetailsRaidInfoNighthold, v
DetailsRaidInfoTrialOfValor, v
DetailsStreamer, v
DetailsTimeAttack, v
DetailsTinyThreat, v
DetailsVanguard, v
EavesDrop, v2.59
ElvUI, v10.31
ElvUISLE, v3.17
ExRT, v3827
MythicPlusProgress, v0.3e for Patch 7.1.0
MythicPlusTimer, v1.2.1
Overachiever, v0.99
OverachieverTrade, v0.99
Pawn, v2.1.9
Postal, vv3.5.8
Simulationcraft, v1.5.1
SlideBar, v5.21f.5579 (SanctimoniousSwamprat)
Stubby, v5.21f.5579 (SanctimoniousSwamprat)
TomTom, vv70100-1.0.0
WeakAuras, v2.2.2.2-15-g70314b2
WorldQuestTracker, v
BlizRuntimeLib_enUS v7.1.0.70100
Posted by: Repooc  Posted on: Dec 05, 2016 08:41 PM

Darth and I almost never read these comments, I would suggest joining the Discord channel for tukui at https://discord.gg/xFWcfgE or S&L Discord which we just started up recently at https://discord.gg/TvYvVWF
Posted by: anzul  Posted on: Nov 27, 2016 12:37 PM

Hey, thanks fpr the great addon pack. love do have it.
a friend ask me if the Armory Mode Style Character & Inspect frame available as an standalone addon?

Posted by: Emomoocow  Posted on: Nov 19, 2016 12:38 AM

Wondering the same thing as Wishen, also if there's anyway to disable/enable it along with changing the font.
Posted by: wishen  Posted on: Nov 17, 2016 03:29 PM

How do you increase the font on the Artifact Tracking in Character screen?
Posted by: nytekat  Posted on: Nov 13, 2016 05:09 PM

To disable the location panel go to modules, dropdown select minimap, location panel tab.
What I'm having an issue with is for some reason I can't get Skada to work with me anymore. It was fine til the recent update. I updated then Skada is in the middle of my screen and don't care what profile I try to load up for it. Everything is updated as of today. I have deleted the SV's and stuff to try over and as soon as I try to do a profile (I'm wanting Darths back) it goes right back to the center.
Posted by: puka18  Posted on: Nov 10, 2016 02:57 AM

Is anyone else getting alot of lua errors with this addon?

[ 1 ] 2 3 4 5 »»