herotc / hero-lib Goto Github PK
View Code? Open in Web Editor NEWWoW Addon - Core Library used by HeroRotation and AethysTools, can also be used by others 3rd-Party Addons.
License: European Union Public License 1.2
WoW Addon - Core Library used by HeroRotation and AethysTools, can also be used by others 3rd-Party Addons.
License: European Union Public License 1.2
I posted this also in hero-rotation as well. Wasn't sure where it should go because this Lua error mentions both.
I copy/paste the error code I'm recieving when using the "Outbreak" ability for unholy. AFAIK, the other abilities aren't having issues.
Below is the LUA error.
Message: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:43: attempt to index local 'Spell' (a nil value)
Time: Wed Jul 18 19:15:16 2018
Count: 32
Stack: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:43: attempt to index local 'Spell' (a nil value)
Interface\AddOns\HeroLib\Class\Unit\Aura.lua:43: in function Buff' Interface\AddOns\HeroLib\Class\Unit\Aura.lua:90: in function <Interface\AddOns\HeroLib\Class\Unit\Aura.lua:89> (tail call): ? Interface\AddOns\HeroRotation_DeathKnight\Unholy.lua:254: in function <Interface\AddOns\HeroRotation_DeathKnight\Unholy.lua:248> Interface\AddOns\HeroRotation_DeathKnight\Unholy.lua:267: in function <Interface\AddOns\HeroRotation_DeathKnight\Unholy.lua:263> Interface\AddOns\HeroRotation_DeathKnight\Unholy.lua:331: in function?'
Interface\AddOns\HeroRotation\Main.lua:432: in function <Interface\AddOns\HeroRotation\Main.lua:410>
Locals: self =
{
AttackPowerDamageMod = defined @interface\AddOns\HeroLib\Class\Unit\Player\Stat.lua:61
RunicPowerDeficitPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:362
Race = defined @interface\AddOns\HeroLib\Class\Unit\Player\Main.lua:34
Insanityrain = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:599
FocusLossOnCastEnd = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:219
PainMax = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:668
IsInVehicle = defined @interface\AddOns\HeroLib\Class\Unit\Player\Main.lua:95
EnergyDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:257
Fury = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:645
InstanceInfo = defined @interface\AddOns\HeroLib\Class\Unit\Player\Instance.lua:68
RageDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:139
VersatilityDmgPct = defined @interface\AddOns\HeroLib\Class\Unit\Player\Stat.lua:98
ArcaneChargesDeficitPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:630
MaelstromPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:510
ArcaneCharges = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:615
ActiveMitigationNeeded = defined @interface\AddOns\HeroLib\Class\Unit\Player\Tank.lua:61
SoulShardsDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:427
IsInWhitelistedVehicle = defined @interface\AddOns\HeroLib\Class\Unit\Player\Main.lua:124
PainDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:686
AttackPower = defined @interface\AddOns\HeroLib\Class\Unit\Player\Stat.lua:57
ChiDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:544
PainDeficitPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:690
PrevOffGCD = defined @interface\AddOns\HeroLib\Events\Prev_Spell.lua:162
MasteryPct = defined @interface\AddOns\HeroLib\Class\Unit\Player\Stat.lua:93
InsanityPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:587
ManaDeficitPercentageP = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:105
FuryDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:656
PrevGCD = defined @interface\AddOns\HeroLib\Events\Prev_Spell.lua:140
AstralPowerMax = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:435
FocusDeficitPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:180
EnergyRegenPercentage = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:265
RunicPowerDeficit = defined @interface\AddOns\HeroLib\Class\Unit\Player\Power.lua:358
FuryPercentage = defined @interface\Add
Prior to SL Prepatch I had no issues with interrupts, but now only channeled spells are shown.
I figured out, that the GetTime() function returns the value in seconds and CastingInfo returns its values of start time and end time in microseconds.
I have fixed it for me, so the return value of the function Unit:CastPercentage is now:
return (GetTime() * 1000 - CastStartTime) / (CastEndTime - CastStartTime) * 100
As Blood DK i need to know how much damage i have taken the last 5 second to understand how much my Death Strike heals me for.
There is Weak Auras that have this implemented already so its should be simple to re use.
The HeroLib project on CurseForge was last updated March 9th for game version 9.0.5, whereas HeroRotation and HeroDBC have both been updated within the month for game version 9.1.0.
I just ran into a NPE about an undefined method (Item:TrinketHasStatAnyDps
) that renders HeroRotation unusable, and it looks like that method was introduced in HeroLib 9.1.0.04 (64e47c8
) back in April.
I've verified that manually updating my local HeroLib to 9.1.0.04 has resolved the issue, at least on my end.
Thanks!
Useful since most DoTs duration got the pandemic threshold that can be reached mid-gcd.
So, for a Subtlety Rogue in @SimCMinMax/aethysrotation, it would display a Nightblade directly instead of Evisc then Nightblade if the pandemic is reached.
Message: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
Time: Tue Dec 8 10:33:22 2020
Count: 810
Stack: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
[string "=[C]"]: ?
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:32: in function <Interface\AddOns\HeroLib\Class\Unit\Aura.lua:27>
[string "=(tail call)"]: ?
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:81: in function BuffRemains' [string "@Interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:99: in function
BuffUp'
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:104: in function BuffDown' [string "@Interface\AddOns\HeroRotation_Warrior\Arms.lua"]:262: in function
?'
[string "@interface\AddOns\HeroRotation\Main.lua"]:445: in function <Interface\AddOns\HeroRotation\Main.lua:423>
Locals:
Getting some weird error messages whenever i mouse over nearly anything...
Message: Interface\AddOns\HeroLib\Events\KeyBinding.lua:36: attempt to call method 'GetPagedID' (a nil value)
Time: Fri Aug 7 18:21:21 2020
Count: 16
Stack: Interface\AddOns\HeroLib\Events\KeyBinding.lua:36: attempt to call method 'GetPagedID' (a nil value)
[string "@Interface\AddOns\HeroLib\Events\KeyBinding.lua"]:36: in function <Interface\AddOns\HeroLib\Events\KeyBinding.lua:21>
[string "@Interface\AddOns\HeroLib\Events\KeyBinding.lua"]:121: in function <Interface\AddOns\HeroLib\Events\KeyBinding.lua:62>
[string "@Interface\AddOns\HeroLib\Events\KeyBinding.lua"]:133: in function `Handler'
[string "@Interface\AddOns\HeroLib\Events\Main.lua"]:227: in function <Interface\AddOns\HeroLib\Events\Main.lua:225>
Locals: Bar = <table> {
1 = "ElvUI_Bar1Button"
2 = 7
}
Override = true
Button = ElvUI_Bar1Button1 {
state_actions = <table> {
}
checked = <unnamed> {
}
NewActionTexture = <unnamed> {
}
Border = ElvUI_Bar1Button1Border {
}
Flash = ElvUI_Bar1Button1Flash {
}
_state_action = 1
icon = ElvUI_Bar1Button1Icon {
}
AutoCastable = <unnamed> {
}
pushed = <unnamed> {
}
keyBoundTarget = "ACTIONBUTTON1"
backdrop = <unnamed> {
}
FlyoutUpdateFunc = <function> defined @Interface\AddOns\ElvUI\Modules\ActionBars\ActionBars.lua:1037
HotKey = ElvUI_Bar1Button1HotKey {
}
action = 0
0 = <userdata>
PixelSnapDisabled = true
flashing = 0
AutoCastShine = ElvUI_Bar1Button1Shine {
}
NormalTexture = ElvUI_Bar1Button1NormalTexture {
}
rangeTimer = -1
LevelLinkLockIcon = <unnamed> {
}
CalculateAction = <function> defined @Interface\FrameXML\SecureTemplates.lua:582
FlyoutBorder = ElvUI_Bar1Button1FlyoutBorder {
}
FlyoutBorderShadow = ElvUI_Bar1Button1FlyoutBorderShadow {
}
hover = <unnamed> {
}
SpellHighlightAnim = <unnamed> {
}
postKeybind = <function> defined @Interface\AddOns\ElvUI\Modules\ActionBars\ActionBars.lua:931
Name = ElvUI_Bar1Button1Name {
}
id = 1
header = ElvUI_Bar1 {
}
SpellHighlightTexture = <unnamed> {
}
__LAB_Version = 20
outOfRange = false
config = <table> {
}
Count = ElvUI_Bar1Button1Count {
}
_state_type = "action"
state_types = <table> {
}
FlyoutArrow = ElvUI_Bar1Button1FlyoutArrow {
}
cooldown = ElvUI_Bar1Button1Cooldown {
}
zoneAbilityDisabled = false
}
ButtonTexture = 538771
ButtonHotKey = "1"
(for index) = 1
(for limit) = 7
(for step) = 1
i = 1
ButtonName = "ElvUI_Bar1Button1"
(*temporary) = <function> defined =[C]:-1
(*temporary) = nil
(*temporary) = ElvUI_Bar1Button1 {
state_actions = <table> {
}
checked = <unnamed> {
}
NewActionTexture = <unnamed> {
}
Border = ElvUI_Bar1Button1Border {
}
Flash = ElvUI_Bar1Button1Flash {
}
_state_action = 1
icon = ElvUI_Bar1Button1Icon {
}
AutoCastable = <unnamed> {
}
pushed = <unnamed> {
}
keyBoundTarget = "ACTIONBUTTON1"
backdrop = <unnamed> {
}
FlyoutUpdateFunc = <function> defined @Interface\AddOns\ElvUI\Modules\ActionBars\ActionBars.lua:1037
HotKey = ElvUI_Bar1Button1HotKey {
}
action = 0
0 = <userdata>
PixelSnapDisabled = true
flashing = 0
AutoCastShine = ElvUI_Bar1Button1Shine {
}
NormalTexture = ElvUI_Bar1Button1NormalTexture {
}
rangeTimer = -1
LevelLinkLockIcon = <unnamed> {
}
CalculateAction = <function> defined @Interface\FrameXML\SecureTemplates.lua:582
FlyoutBorder = ElvUI_Bar1Button1FlyoutBorder {
}
FlyoutBorderShadow = ElvUI_Bar1Button1FlyoutBorderShadow {
}
hover = <unnamed> {
}
SpellHighlightAnim = <unnamed> {
}
postKeybind = <function> defined @Interface\AddOns\ElvUI\Modules\ActionBars\ActionBars.lua:931
Name = ElvUI_Bar1Button1Name {
}
id = 1
header = ElvUI_Bar1 {
}
SpellHighlightTexture = <unnamed> {
}
__LAB_Version = 20
outOfRange = false
config = <table> {
}
Count = ElvUI_Bar1Button1Count {
}
_state_type = "action"
state_types = <table> {
}
FlyoutArrow = ElvUI_Bar1Button1FlyoutArrow {
}
cooldown = ElvUI_Bar1Button1Cooldown {
}
zoneAbilityDisabled = false
}
(*temporary) = "attempt to call method 'GetPagedID' (a nil value)"
KeyBindings = <tabl
just thought i'd drop an issue ticket!
May also be an ElvUI issue, but i didn't see it happening until i installed herolib
So if someone got nameplates disabled, at least it'll compute the target TTD.
Hello,
This library seems very nice to use for add-on creation. I had a glance at some parts of the source code to get an idea of what is possible. Now I'm wondering if there's documentation somewhere and where it is. If it exists, it would be nice to link it in the Readme
.
It renders herorotation useless untill the useable trinket is on cd, as long as the trinket is on cd everything works but off of cd herorotation remains disabled.
11259x ...rfaceHeroLib/Class/Unit/Player/Equipment.lua:109: attempt to get length of local 'ExcludedTrinkets' (a nil value)
[string "@HeroLib/Class/Unit/Player/Equipment.lua"]:109: in function GetUseableTrinkets' [string "@HeroRotation_Hunter/Survival.lua"]:197: in function <HeroRotation_Hunter/Survival.lua:156> [string "@HeroRotation_Hunter/Survival.lua"]:495: in function
?'
[string "@HeroRotation/Main.lua"]:455: in function <HeroRotation/Main.lua:433>
Locals:
self =
I was digging into the KeyBindings.lua code for the HRLib and see there appears to be some kind of support for Bartender but it doesn't seem like there's much - just one button (by the looks of the code) plus none of my BT key binds show up. Is there something extra I need to do to get my BT key binds to be visible in HR? I've keybound a number of bars and icons in BT and have used it for years so I would love to be able to utilize that.
1x [ADDON_ACTION_BLOCKED] AddOn 'HeroLib' hat versucht die geschützte Funktion 'CompactRaidFrame1:Show()' aufzurufen.
[string "@!BugGrabber\BugGrabber.lua"]:519: in function <!BugGrabber\BugGrabber.lua:519>
[string "=[C]"]: in function Show' [string "@FrameXML\CompactUnitFrame.lua"]:376: in function
CompactUnitFrame_UpdateVisible'
[string "@FrameXML\CompactUnitFrame.lua"]:307: in function <FrameXML\CompactUnitFrame.lua:305>
[string "=[C]"]: in function `CompactUnitFrame_UpdateAll'
[string "@FrameXML\CompactUnitFrame.lua"]:126: in function <FrameXML\CompactUnitFrame.lua:57>
It's not updating when the ability is used, only returning the current GetTime()
Message: Interface\AddOns\HeroLib\Events\KeyBinding.lua:100: attempt to index field 'db' (a nil value)
Time: Sun Apr 7 15:41:10 2019
Count: 5
Stack: Interface\AddOns\HeroLib\Events\KeyBinding.lua:100: attempt to index field 'db' (a nil value)
Interface\AddOns\HeroLib\Events\KeyBinding.lua:100: in function <Interface\AddOns\HeroLib\Events\KeyBinding.lua:62>
Interface\AddOns\HeroLib\Events\KeyBinding.lua:133: in function `Handler'
Interface\AddOns\HeroLib\Events\Main.lua:227: in function <Interface\AddOns\HeroLib\Events\Main.lua:225>
Locals: (*temporary) =
{my lua error
10.1.0.07
Lua error pops up in combat. Un-equipping and re-equipping my Drogbar Rocks trinket seems to have made the error go away.
I might have upgraded it or my other trinket (Pocket Darkened Elemental Core) before the error starting popping up.
Message: ...rface/AddOns/HeroLib/Class/Unit/Player/Equipment.lua:155: attempt to index a nil value
Time: Sat Jun 3 13:33:47 2023
Count: 865
Stack: ...rface/AddOns/HeroLib/Class/Unit/Player/Equipment.lua:155: attempt to index a nil value
Locals:
Because of the Blizzard feature that makes mobs having their HPs that scales based on the iLevel and the number of ppl hitting it, it's better to use the % health rather than the raw health value.
I'm having some latency on my druid right now. I checked the menu bar to see what's eating memory, and I see HeroLib steadily ticking up even though I'm just standing still. It was 38mb when I was watching it, and now 40.3 and still going up.
I reloaded. It dropped down to 28mb and started ticking right back up again as I watched. It's going up at .01 or .02mb per second.
8.3.0.00-19-g1ecbe47-alpha
Update: Just downgraded to 8.3.0.00-18-g53d23e6-alpha, logged in... now seeing it tick up .03-.04mb per second. ><
Hekili has an option where you can choose how many windows you want, so you can see the spells next few spells that needs to be cast.
Is this possible with Aethy?
I think its a big deal, as it would make room for more flow in the rotation, because you know what the next spell needs to be.
It kinda stops the fluidity of the rotation if you have a class with alot of instants, as it would require alot of focus on the addon itself. A second or even third window would just be neat.
As per the comments in: 9f824f2
At some point, this likely should be refactored to use combat log events or some other more accurate way to know when we have started to receive updates from the server following the successful spell cast event.
Lua error pops up every time my mage casts Ice Lance.
Message: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:43: Usage: GetPlayerAuraBySpellID(spellID)
Time: Wed Jul 20 15:48:31 2022
Count: 62
Stack: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:43: Usage: GetPlayerAuraBySpellID(spellID)
Locals:
446x HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
[string "@herolib\Class\Unit\Aura.lua"]:32: in function <HeroLib\Class\Unit\Aura.lua:27>
[string "=(tail call)"]: ?
[string "@herolib\Class\Unit\Aura.lua"]:148: in function DebuffRemains' [string "@HeroLib\Class\Unit\Aura.lua"]:159: in function
DebuffUp'
[string "@herolib\Class\Unit\Aura.lua"]:164: in function DebuffDown' [string "@HeroLib\Class\Unit\Aura.lua"]:132: in function
DebuffStack'
[string "@HeroRotation_Mage\Arcane.lua"]:607: in function <HeroRotation_Mage\Arcane.lua:561>
[string "@HeroRotation_Mage\Arcane.lua"]:907: in function `?'
[string "@HeroRotation\Main.lua"]:445: in function <HeroRotation\Main.lua:423>
I have HeroLib installed as part of Hero Rotation.
The memory usage for HeroLib is increasing by 0.03MB every second, when I'm stationary, out of combat and without Hero Rotation displayed (turned off OOC).
It's currently at 30MB and continuing to increase.
Message: ...\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua:223: attempt to call method 'SetBackdrop' (a nil value)
Time: Fri Aug 14 11:00:00 2020
Count: 1
Stack: ...\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua:223: attempt to call method 'SetBackdrop' (a nil value)
[string "@interface\AddOns\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua"]:223: in function `creatre_UIDropDownList'
[string "@interface\AddOns\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua"]:386: in main chunk
Locals: name = "L_DropDownList1"
parent = nil
f = L_DropDownList1 {
0 =
Backdrop = L_DropDownList1Backdrop {
}
}
(*temporary) = nil
(*temporary) = L_DropDownList1Backdrop {
0 =
}
(*temporary) =
10.2.0.21
Hi
I'm building a Feral Druid and just unlocked the first level of the Astral Influence Druid talent.
When I approach any potential target (even training dummies), I get this lua error.
Message: Interface/AddOns/HeroLib/Class/Unit/Range.lua:82: Distance must be between 5 and 100.
Time: Thu Dec 21 13:02:53 2023
Count: 882
Stack: Interface/AddOns/HeroLib/Class/Unit/Range.lua:82: Distance must be between 5 and 100.
[string "=[C]"]: in function `assert'
[string "@Interface/AddOns/HeroLib/Class/Unit/Range.lua"]:82: in function <Interface/AddOns/HeroLib/Class/Unit/Range.lua:80>
[string "=(tail call)"]: ?
[string "=(tail call)"]: ?
[string "@Interface/AddOns/HeroLib/Class/Unit/Player/Enemies.lua"]:40: in function <...terface/AddOns/HeroLib/Class/Unit/Player/Enemies.lua:33>
[string "@Interface/AddOns/HeroLib/Class/Unit/Player/Enemies.lua"]:116: in function `GetEnemiesInMeleeRange'
[string "@Interface/AddOns/HeroRotation_Druid/Feral.lua"]:692: in function `?'
[string "@Interface/AddOns/HeroRotation/Main.lua"]:460: in function <Interface/AddOns/HeroRotation/Main.lua:438>
Locals: (*temporary) = false
(*temporary) = "Distance must be between 5 and 100."
The counter goes up very quickly.
This error does not appear by not putting any points or by putting 2 points in the talent.
HeroLib 10.2.0.21
HeroRotation 10.2.0.43
HeroDBC 10.2.0.06
Randomly happened after a loading screen (warlock and SP
15x [string "return function(func, a1,a2,a3)..."]:4: table index is nil [string "return function(func, a1,a2,a3)..."]:4: in function <[string "return function(func, a1,a2,a3)..."]:1> (tail call): ? (tail call): ? AethysCore\Class\Player.lua:66: in function <AethysCore\Class\Player.lua:64> (tail call): ? AethysTools\PullAnnouncer.lua:195: in function
Handler'
AethysCore\Events\Main.lua:270: in function `Handler'
AethysCore\Events\Main.lua:225: in function <AethysCore\Events\Main.lua:223>
Locals:
func = defined @AethysCore\Class\Player.lua:67
a1 = "UnitInfo"
a2 = nil
a3 = "InstanceInfo"
c0 =
10.2.06.02
4x [ADDON_ACTION_BLOCKED] Модификация 'HeroLib' пыталась вызвать защищенную функцию 'UNKNOWN()'.
[string "@!BugGrabber/BugGrabber.lua"]:485: in function <!BugGrabber/BugGrabber.lua:485>
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "@HeroLib/Class/Unit/Range.lua"]:124: in function <HeroLib/Class/Unit/Range.lua:80>
[string "=(tail call)"]: ?
[string "=(tail call)"]: ?
[string "@HeroLib/Class/Unit/Player/Enemies.lua"]:40: in function <HeroLib/Class/Unit/Player/Enemies.lua:33>
[string "@HeroLib/Class/Unit/Player/Enemies.lua"]:116: in function GetEnemiesInMeleeRange' [string "@HeroRotation_Shaman/Enhancement.lua"]:562: in function
?'
[string "@HeroRotation/Main.lua"]:460: in function <HeroRotation/Main.lua:438>
Locals:
_ = Frame {
RegisterEvent = defined @!BugGrabber/BugGrabber.lua:491
0 =
UnregisterEvent = defined @!BugGrabber/BugGrabber.lua:491
SetScript = defined @!BugGrabber/BugGrabber.lua:491
}
event = "ADDON_ACTION_BLOCKED"
events =
I take it this is a copy-paste? ^^
hero-lib/HeroLib/GUI/Panels.lua
Lines 228 to 232 in 6a573a9
From here:
hero-lib/HeroLib/GUI/Panels.lua
Lines 223 to 227 in 6a573a9
And strange defaults - maybe switch them?
Or I am wrong? :)
HeroLib and Titan init with TSM interaction issue.
This occurs when logging in and during addon loadin. if I disable TSM this does not occur.
I also reported this to the TSM folk.
LUA error text:
Date: 2019-01-20 07:27:39
ID: 1
Error occured in: Global
Count: 1
Message: ...\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua line 110:
attempt to index field '?' (a nil value)
Debug:
...ce\AddOns\TradeSkillMaster\Core\Lib\ErrorHandler.lua:613:
...ce\AddOns\TradeSkillMaster\Core\Lib\ErrorHandler.lua:575
[C]: ?
...\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua:110: L_UIDropDownMenu_Initialize()
Titan\TitanUtils.lua:1569:
Titan\TitanUtils.lua:1557
Titan\TitanUtils.lua:1664: TitanPanelDisplayRightClickMenu_Toggle()
Titan\TitanPanel.lua:581: TitanPanelBarButton_OnClick()
TitanReputation\TitanReputation.lua:190: TitanPanelReputationButton_OnLoad()
[string ":OnLoad"]:1:
[string ":OnLoad"]:1
Locals:
errMsg = "...\HeroLib\Lib\LibUIDropDownMenu\LibUIDropDownMenu.lua:110: attempt to index field '?' (a nil value)"
errorTime = 2022372.615783
tsmErrMsg = nil
oldModule = nil
private =
AddOns:
Swatter, v8.0.6162 (SwimmingSeadragon)
AAPCore, v8.1046
Ace3, v
ACP, vr259
AllTheThings, v1.8.2b
Altoholic, vr190
AskMrRobot, v71
AtlasLoot, vv8.09.00
AtlasLootBattleforAzeroth, vv8.09.00
AtlasLootBurningCrusade, vv8.09.00
AtlasLootCataclysm, vv8.09.00
AtlasLootClassic, vv8.09.00
AtlasLootLegion, vv8.09.00
AtlasLootMistsofPandaria, vv8.09.00
AtlasLootWarlordsofDraenor, vv8.09.00
AtlasLootWrathoftheLichKing, vv8.09.00
AucAdvanced, v8.0.6122 (SwimmingSeadragon)
AucFilterBasic, v8.0.6149 (SwimmingSeadragon)
AucStatHistogram, v8.0.6151 (SwimmingSeadragon)
AucStatiLevel, v8.0.6155 (SwimmingSeadragon)
AucStatPurchased, v8.0.6152 (SwimmingSeadragon)
AucStatSimple, v8.0.6153 (SwimmingSeadragon)
AucStatStdDev, v8.0.6154 (SwimmingSeadragon)
AucUtilFixAH, v8.0.6156 (SwimmingSeadragon)
Auctionator, v8.1.0
AutoRepair, v
AzeritePowerWeights, v8.1.7
AzerothAutoPilot, v
BadNomi, v0.8.4
BagBrother, v
Bagnon, v8.0.7
BarrelsOEasy, v1.1.11
BattlePetBreedID, vr185
BattlePetCount, v1.8.16
BeanCounter, v8.0.6157 (SwimmingSeadragon)
BigWigs, vv123
BonusRollPreview, v80000.46-Release
BtWQuests, v1.34
BtWQuestsBattleForAzeroth, v22
BtWQuestsBattleForAzerothPrologue, v10
BtWQuestsClassic, v4
BtWQuestsLegion, v17
CanIMogIt, v8.0.0v1.13
DataStore, vr65
DataStoreAgenda, vr29
DataStoreAuctions, vr50
DataStoreCharacters, vr43
DataStoreContainers, vr59
DataStoreCrafts, vr82
DataStoreCurrencies, vr38
DataStoreGarrisons, vr24
DataStoreInventory, vr53
DataStoreMails, vr52
DataStorePets, vr44
DataStoreQuests, vr46
DataStoreReputations, vr43
DataStoreSpells, vr32
DataStoreStats, vr31
DataStoreTalents, vr61
DBMCore, v8.1.2
DBMDefaultSkin, v
DBMStatusBarTimers, v
Decursive, v2.7.6.2
DraenorTreasures, v8.0.1.27144
DugisGuideViewerZ, v5.100
FishingAce, v0.8.9
FishingBuddy, v1.9.25p1
GarrisonCommanderBroker, v3.0.1 1.1.0
GatherMate2, v1.43.4
Grail, v099
GrailQuestsenUS, v27178
GTFO, v4.46.12
GupPet, v8.0.1.05
HandyNotes, vv1.5.3
HandyNotesArgus, vv0.12
HandyNotesBattleForAzerothAchievments, vv7
HandyNotesBattleForAzerothTreasures, v1
HandyNotesBrokenShore, vv1.30
HandyNotesDraenorTreasures, v1.21
HandyNotesDungeonLocations, v1.45
HandyNotesHallowsEnd, vv1.4.3
HandyNotesHigherLearning, v8.0.0.0
HandyNotesLegionClassOrderHalls, vv1.30
HandyNotesLegionRaresTreasures, v1.1
HandyNotesLegionTreasures, v1
HandyNotesLunarFestival, vv1.5
HandyNotesSummerFestival, vv1.5
HandyNotesTimelessIsleChests, v1.21
HandyNotesTreasureHunter, v1
HandyNotesUniversalExplorer, v8.0.1.2
HandyNotesWarfrontRares, v0.5.0
HandyNotesWarfrontTreasures, v1
HandyNotesWellRead, v8.0.0.0
HealBot, v8.1.0.1
HeroCache, v8.0.1.09
HeroLib, v8.0.1.09
HeroRotation, v8.0.1.09
LibBabbleBoss30, v
LibBabbleFaction30, v
LibDBIcon10, v
LibDialog10, vr93
LibQTip10, v8.0.1.1
LibSharedMedia30, v3.0-104
LibTabbedFrame10, v0.3
LibTextDump10, v8.1.0.1
LookingForGroup, vr1823
LookingForGroupBindings, vr1823
LookingForGroupBroker, vr1823
LookingForGroupEvent, vr1823
LookingForGroupHook, vr1823
LookingForGroupIcon, vr1823
LookingForGroupSF, vr1823
LootAppraiser, vv1.9.3
MasterPlanA, vA
MinimapButtonFrame, v3.1.10h
MinimapButtonFrameSkinPack, v3.0.1b
MogIt, v3.8.11
OmniCC, v8.1.1
Outfitter, v5.22.1
Overachiever, v1.0.5
OverachieverCache, v1.0.5
Pawn, v2.2.34
PetBattleTeams, v3.3.11
PetTracker, v8.0.6
PetTrackerBreeds, v8.0.6
PetTrackerSwitcher, v8.0.6
PetTrackerUpgrades, v8.0.6
Postal, vv3.6.0
Prat30, vr1195
Prat30Libraries, v
QuestCompletist, v109.20
RareScanner, v5.3.1
Rarity, v1.0 (r681-release)
RarityOptions, v
Rematch, v4.9.4
Routes, vv1.6.0
SilverDragon, vv4.0.13
SilverDragonBattleForAzeroth, vv4.0.13
SilverDragonBurningCrusade, vv4.0.13
SilverDragonCataclysm, vv4.0.13
SilverDragonLegion, vv4.0.13
SilverDragonMists, vv4.0.13
SilverDragonVanilla, vv4.0.13
SilverDragonWarlords, vv4.0.13
SilverDragonWrath, vv4.0.13
Simulationcraft, v1.10.10
Skada, v1.7.5
SlideBar, v8.0.6160 (SwimmingSeadragon)
SpellFlashCore, v2.1.8
Stubby, v8.0.6161 (SwimmingSeadragon)
TheUndermineJournal, v5.4.20190119
Titan, v5.16.1.80100
TitanBag, v5.16.1.80100
TitanClock, v5.16.1.80100
TitanCurrenciesMulti, v6.3
TitanCurrency, v8.1
TitanGold, v5.16.1.80100
TitanGuild, v8.0.0.0
TitanLocation, v5.16.1.80100
TitanLootType, v5.16.1.80100
TitanPerformance, v5.16.1.80100
TitanRepair, v5.16.1.80100
TitanReputation, v3.9.5
TomTom, vv80100-1.0.0-beta
TradeSkillMaster, vv4.6.13
BlizRuntimeLib_enUS v8.1.0.80100
(ck=125e)
The need comes down from ARParser, where I try to translate the use_items action into lua code for AethysRotation.
use_items asks the player to use every useable equipped item by the player; this should probably be cached, and refreshed when the equipment changes.
Instead of tracking it on demand on each pulse, rather make an event listener to build the buffs table (on aura applied / removed).
Player is the top priority but the handler should be flexible to take any UnitIDs/GUID (so, in the future it could be extended to UnitIDs even if the GUID changes, which is something that can happen with nameplates tracking especially).
Sometimes demonology returns a decimal number e.g. 1.1 or 2.1 for shards which effects the next spell shown in the rotation.
I noticed that within the wow interface files specifically ShardBar.lua they have the following where they use math.floor to ensure soulshards are not decimal for both demonology and affliction. Shouldn't we also be using this for our soulshards function?
local shardPower = WarlockPowerBar_UnitPower(self:GetUnit());
-- Bug ID: 496542: Destruction is supposed to show partial soulshards, but Affliction and Demonology should only show full ones.
if GetSpecialization() ~= SPEC_WARLOCK_DESTRUCTION then
shardPower = math.floor(shardPower);
end```
Currently, key binds for spells in the player's stealth bar are not retrieved correctly.
This potentially affects other specs special bars (to be confirmed).
Wow API ActionSlot for reference.
Key binds are managed in KeyBinding.lua
Hello,
I've pledged with ravendreth, it looks like since then, there is this error only in vengeance, not havoc :
Message: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
Time: Thu Nov 26 14:16:28 2020
Count: 9
Stack: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:32: in function <Interface\AddOns\HeroLib\Class\Unit\Aura.lua:27>
[string "=(tail call)"]: ?
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:81: in function BuffRemains' [string "@Interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:99: in function
BuffUp'
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:104: in function BuffDown' [string "@Interface\AddOns\HeroRotation_DemonHunter\Vengeance.lua"]:192: in function <...erface\AddOns\HeroRotation_DemonHunter\Vengeance.lua:181> [string "@Interface\AddOns\HeroRotation_DemonHunter\Vengeance.lua"]:306: in function
?'
[string "@interface\AddOns\HeroRotation\Main.lua"]:445: in function <Interface\AddOns\HeroRotation\Main.lua:423>
Locals: self =
{HeroLib\Events\Action.lua:190: attempt to index field 'ElvUIPaging' (a nil value)
[string "@herolib\Events\Action.lua"]:190: in function <HeroLib\Events\Action.lua:185>
[string "@herolib\Events\Action.lua"]:226: in function <HeroLib\Events\Action.lua:208>
[string "@herolib\Events\Action.lua"]:320: in function <HeroLib\Events\Action.lua:288>
[string "@herolib\Events\Action.lua"]:342: in function `Handler'
[string "@herolib\Events\Main.lua"]:80: in function <HeroLib\Events\Main.lua:78>
Locals:
class = "DEATHKNIGHT"
(for index) = 1
(for limit) = 10
(for step) = 1
i = 1
BarNum = "bar1"
PagingString = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index field 'ElvUIPaging' (a nil value)"
Cache =
11.0.0.02
HeroLib/Rotation fails after initial spell cast. LUA Error is as follows:
Message: Interface/AddOns/HeroLib/Class/Spell/Cooldown.lua:44: attempt to index local 'SpellInfo' (a nil value)
Time: Wed Jul 24 04:06:58 2024
Count: 43
Stack: Interface/AddOns/HeroLib/Class/Spell/Cooldown.lua:44: attempt to index local 'SpellInfo' (a nil value)
[string "@Interface/AddOns/HeroLib/Class/Spell/Cooldown.lua"]:44: in function ChargesInfo' [string "@Interface/AddOns/HeroLib/Class/Spell/Cooldown.lua"]:50: in function
Cooldown'
[string "@Interface/AddOns/HeroRotation_Warlock/Destruction.lua"]:609: in function <...nterface/AddOns/HeroRotation_Warlock/Destruction.lua:604>
[string "@Interface/AddOns/HeroRotation_Warlock/Destsruction.lua"]:664: in function `?'
[string "@Interface/AddOns/HeroRotation/Main.lua"]:476: in function <Interface/AddOns/HeroRotation/Main.lua:455>
Locals: self =
{local powerID = C_LegendaryCrafting.GetRuneforgeLegendaryComponentInfo(Item:CreateFromEquipmentSlot(1):GetItemLocation()).powerID
local SpellID = C_LegendaryCrafting.GetRuneforgePowerInfo(powerID).descriptionSpellID
SpellID is
https://www.wowhead.com/spells/legendary-item-effects
my lua warning.
Message: Interface\AddOns\HeroLib\Events\KeyBinding.lua:100: attempt to index field 'db' (a nil value)
Time: Mon Mar 25 20:27:13 2019
Count: 1
Stack: Interface\AddOns\HeroLib\Events\KeyBinding.lua:100: attempt to index field 'db' (a nil value)
Interface\AddOns\HeroLib\Events\KeyBinding.lua:100: in function <Interface\AddOns\HeroLib\Events\KeyBinding.lua:62>
Interface\AddOns\HeroLib\Events\KeyBinding.lua:133: in function `Handler'
Interface\AddOns\HeroLib\Events\Main.lua:227: in function <Interface\AddOns\HeroLib\Events\Main.lua:225>
Locals: (*temporary) =
{Below is an example of the costinfos for Heartstrike since type -2 doesn't exist IsUsableP errors for heartstrike. perhaps we should check for nil in the predcited resource map e.g.
if Player.PredictedResourceMap[CostInfo.type] ~= nil then
{
[1] = {
["hasRequiredAura"] = false,
["type"] = -2,
["name"] = HEALTH,
["cost"] = 0,
["minCost"] = 0,
["requiredAuraID"] = 202846,
["costPercent"] = 10,
["costPerSec"] = 0,
},
[2] = {
["hasRequiredAura"] = false,
["type"] = 6,
["name"] = RUNIC_POWER,
["cost"] = -15,
["minCost"] = -15,
["requiredAuraID"] = 0,
["costPercent"] = 0,
["costPerSec"] = 0,
},
[3] = {
["hasRequiredAura"] = false,
["type"] = 5,
["name"] = RUNES,
["cost"] = 1,
["minCost"] = 1,
["requiredAuraID"] = 0,
["costPercent"] = 0,
["costPerSec"] = 0,
} ,
}
Del wrong section.
10.1.7.03
the function Player:HasTier, located in Equipment.lua is checking for the:
Cache.Persistent.Player.Class[3].
That's populated by:
Class = { UnitClassBase("player") },
UnitClassBase only returns have 2 returns.
BT4 is now using Blizzard Action Bar 1 for Keybinds for BT4 Bar 1 (and the stealth/form bars and such) by Default. and when you set keybinds using the BT /KB command
This causes Hero-lib to not see the Keybinds for anything on Bar1
Work around is to go in to blizzards Keybind interface and set Bartender4 Bar 1 keybinds to the desired keys
Hero-Lib will need to get Keybind info from both Blizzard Action Bar 1 (possibly others) and Bartender
10.2.5.03
hero-lib/HeroLib/Class/Unit/Player /Enemies.lua Line 140:
if not RangeCheck then RangeCheck = function (ThisUnit) return ThisUnit:IsInSpellRange(ThisSpell) end RangeCheckByIdentifier[Identifier] = RangeCheck end
ThisUnit:IsInSpellRange(ThisSpell) should be ThisUnit:IsSpellInRange(ThisSpell)
I'm new to Git, so sorry if I did something wrong or missed something.
10.0.5.01
I'm not sure if it's HeroLib or HeroRotation error as the log backtracks all the way to HeroRotation/Main.lua. This error shows randomly when fighting, I wasn't able to see when it was raised exactly. I tried some other classes (Warlock and Evoker) and it doesn't show up there.
I'm using HeroRotation v10.0.5.05
6x HeroLib/Class/Unit/Aura.lua:36: attempt to index local 'ThisSpell' (a nil value)
[string "@HeroLib/Class/Unit/Aura.lua"]:36: in function <HeroLib/Class/Unit/Aura.lua:32>
[string "=(tail call)"]: ?
[string "@HeroLib/Class/Unit/Aura.lua"]:101: in function `BuffRemains'
[string "@HeroLib/Class/Unit/Aura.lua"]:119: in function `BuffUp'
[string "@HeroLib/Class/Unit/Aura.lua"]:124: in function `BuffDown'
[string "@HeroRotation_Priest/Shadow.lua"]:561: in function <HeroRotation_Priest/Shadow.lua:525>
[string "@HeroRotation_Priest/Shadow.lua"]:660: in function `?'
[string "@HeroRotation/Main.lua"]:455: in function <HeroRotation/Main.lua:433>
Talents used: BIQA16pR6xQxvK1VWhXk+w0/GgkgEAAAAAAAAAAAAAJhkSEST7AJJJFiESKKkEJSjQSQQRahkAA
All other Addons disabled...
Message: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
Time: Mon Nov 30 17:55:58 2020
Count: 35
Stack: Interface\AddOns\HeroLib\Class\Unit\Aura.lua:32: attempt to index local 'ThisSpell' (a nil value)
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:32: in function <Interface\AddOns\HeroLib\Class\Unit\Aura.lua:27>
[string "=(tail call)"]: ?
[string "@interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:81: in function BuffRemains' [string "@Interface\AddOns\HeroLib\Class\Unit\Aura.lua"]:99: in function
BuffUp'
[string "@interface\AddOns\HeroRotation_Rogue\Outlaw.lua"]:193: in function <Interface\AddOns\HeroRotation_Rogue\Outlaw.lua:190>
[string "@interface\AddOns\HeroRotation_Rogue\Outlaw.lua"]:261: in function <Interface\AddOns\HeroRotation_Rogue\Outlaw.lua:201>
[string "@interface\AddOns\HeroRotation_Rogue\Outlaw.lua"]:506: in function `?'
[string "@interface\AddOns\HeroRotation\Main.lua"]:445: in function <Interface\AddOns\HeroRotation\Main.lua:423>
Locals: self =
{BugSack logs the following:
1897x HeroRotation_Warrior\Fury-Fury.lua:229: attempt to index field 'VictoryRush' (a nil value) [string "@HeroRotation_Warrior\Fury-Fury.lua"]:229: in function
?'
[string "@HeroRotation\Main.lua"]:446: in function <HeroRotation\Main.lua:424>
Locals:
ShouldReturn = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = 1
(*temporary) = 35000
(*temporary) = 0.002857
(*temporary) = 35000
(*temporary) = "player"
(*temporary) = "attempt to index field 'VictoryRush' (a nil value)"
AoEON = defined @HeroRotation\Core.lua:355
Enemies8y =
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.