Ovale Spell Priority

Ovale Spell Priority

6M Downloads

DH error

zalidthebur opened this issue ยท 5 comments

commented

Using 7.3.8, but the TOC has not been changed and still showing 7.3.0.3

Date: 2018-01-08 22:24:08
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\Ovale\dist\conditions.lua line 2483:
attempt to index upvalue 'OvaleDemonHunterSoulFragments' (a nil value)
Debug:
[C]: ?
Ovale\dist\conditions.lua:2483:
Ovale\dist\conditions.lua:2481
(tail call): ?
Ovale\dist\BestAction.lua:514: visitor()
Ovale\dist\BestAction.lua:798: RecursiveCompute()
Ovale\dist\BestAction.lua:775: PostOrderCompute()
Ovale\dist\BestAction.lua:746:
Ovale\dist\BestAction.lua:736
(tail call): ?
Ovale\dist\BestAction.lua:501: visitor()
Ovale\dist\BestAction.lua:798: RecursiveCompute()
Ovale\dist\BestAction.lua:775: PostOrderCompute()
Ovale\dist\BestAction.lua:746:
Ovale\dist\BestAction.lua:736
(tail call): ?
Ovale\dist\BestAction.lua:727: GetAction()
Ovale\dist\Frame.lua:154:
Ovale\dist\Frame.lua:122
(tail call): ?
Locals:

AddOns:
Swatter, v7.3.1 (<%codename%>)
WowheadLooter, v70300
NPCScanOverlay, v7.3.0.1
Ace3, v
AchievementsReminder, v
AckisRecipeList, v7.3.0.1
AckisRecipeListQuickScan, v7.3.0.1
ACP, vr250
AdiBags, vv1.9.8
AllTheThings, v1.4.5
Altoholic, vr183
APeonsBurden, vv2.5
ArgusEliteTracker, v1.1.1
Armory, vv14.4.2
ArmoryGuildBank, vv14.4.2
AskMrRobot, v55
AucAdvanced, v7.5.5724 (TasmanianThylacine)
AucFilterOutlier, v7.5.5724.5459(7.5/embedded)
AucMatchUndercut, v7.5.5724.5585(7.5/embedded)
AucStatHistogram, v7.5.5724 (TasmanianThylacine)
AucStatSales, v7.5.5724.5598(7.5/embedded)
AucStatSimple, v7.5.5724 (TasmanianThylacine)
AucStatWOWEcon, v7.5.5724.5613(7.5/embedded)
AucUtilAHWindowControl, v7.5.5724.5575(7.5/embedded)
AucUtilAppraiser, v7.5.5724.5719(7.5/embedded)
AucUtilAskPrice, v7.5.5724.5599(7.5/embedded)
AucUtilAutoMagic, v7.5.5724.5686(7.5/embedded)
AucUtilCompactUI, v7.5.5724.5715(7.5/embedded)
AucUtilEasyBuyout, v7.5.5724.5576(7.5/embedded)
AucUtilItemSuggest, v7.5.5724.5651(7.5/embedded)
AucUtilPriceLevel, v7.5.5724.5633(7.5/embedded)
AucUtilScanButton, v7.5.5724.5631(7.5/embedded)
AucUtilScanFinish, v7.5.5724.5720(7.5/embedded)
AucUtilScanProgress, v7.5.5724.4979(7.5/embedded)
AucUtilScanStart, v7.5.5724.5347(7.5/embedded)
AucUtilSearchUI, v7.5.5724.5721(7.5/embedded)
AucUtilSimpleAuction, v7.5.5724.5705(7.5/embedded)
AucUtilVendMarkup, v7.5.5724.4828(7.5/embedded)
Auctionator, v4.0.19
Babylonian, v5.1.DEV.332(/embedded)
BadBoy, vv7.3.81
BarrelsOEasy, v1.0.0
BattlePetDailyTamer, v2.1.7
BattlePetBreedID, vr162
BonusRollPreview, v70300.44-Release
BtWQuests, v0.10.0
CanIMogIt, v7.3.2v1.5
Chinchilla, vv2.8.5
ClassTimer, v2.3.70300.1
Collectinator, v7.2.5.1
CollectionShop, v2.06
CollectMe, v2.9.5
Configator, v5.1.DEV.431(/embedded)
ConfirmSP, v02.08
CooldownCount, v7.0.2
CrossRealmAssist, v0.81 beta
DamnAchievementSpam, v
DataStore, vr64
DataStoreAchievements, vr46
DataStoreAgenda, vr26
DataStoreAuctions, vr49
DataStoreCharacters, vr41
DataStoreContainers, vr57
DataStoreCrafts, vr78
DataStoreCurrencies, vr36
DataStoreGarrisons, vr22
DataStoreInventory, vr51
DataStoreMails, vr50
DataStorePets, vr43
DataStoreQuests, vr43
DataStoreReputations, vr41
DataStoreSpells, vr31
DataStoreStats, vr30
DataStoreTalents, vr60
DBMCore, v7.3.16
DBMDefaultSkin, v
DBMStatusBarTimers, v
DebugLib, v5.1.DEV.337(/embedded)
Decursive, v2.7.5.7
DejaCharacterStats, v730rc108
EasyMail, v
ExaltedPlus, v14
ExtTransmogUI, v1.1.0
FishingBuddy, v1.7.13i
FlaresThatWork, v2.3.4
FocusHealthPercent, v4.0.1
Grid, v7.1.0.1
GTFO, v4.44.2
GuildBankSnapshots, v1
GuildCheck, vv 2.4.9
HandyNotes, vv1.4.15
HandyNotesArgus, v0.20.0
HandyNotesDraenorTreasures, v1.20a
HandyNotesLegionRaresTreasures, v1.01b
HandyRepairNSell, v0.3
ILDBlizzard, v2.0.18 70200
InFlightLoad, v7.3.002
Informant, v7.5.5724 (TasmanianThylacine)
InspectorGadgetzan, v7.1.0.1
InterruptNoSpam, v1.65
IskarAssist, v
ItemLevelDisplay, v2.0.18 70200
LargerMacroIconSelection, vv1.2.1
LegionInvasionTimer, vv7.3.0
LibExtraTip, v5.12.DEV.430(/embedded)
LongMacros, vv1.0.13
MacroBank, v1.11
MasterPlanA, vA
MaxDps, v7.3.0.1
MinimalArchaeology, v7.3.0 (2017-04-07)
MinimapButtonFrame, v3.1.10e
MinimapButtonFrameSkinPack, v3.0.1b
mOnArsWardrobeHelper, v1.17.1
Notes, v7.8
NPCScan, v7.3.0.6
Omen, v3.1.12
Ovale, v7.3.0.3
Overachiever, v0.99.10
Paste, v1.4.10
Pawn, v2.2.17a
PetBattleMaster, v7.0.4
PetTracker, v7.3.0
PetTrackerBreeds, v7.3.0
PetTrackerConfig, v7.3.0
PetTrackerJournal, v7.3.0
PetTrackerSwitcher, v7.3.0
PetTrackerUpgrades, v7.3.0
PGFinder, v5.3
QuickMark, v
QuizHelper, v
RaidAchieveFilter, v1.9.7
RaidAchievement, v
RaidAchievementOldModules, v
RangeColors, v
Rarity, v1.0
RarityOptions, v
Rematch, v4.7.10
SafariHatnotification, v
SavedInstances, vv7.0.13
SellOMatic2, va072
SellOMatic2List, va072
SetCollector, v3.0.5
SilverDragon, vv4.0.2
SilverDragonBurningCrusade, vv4.0.2
SilverDragonCataclysm, vv4.0.2
SilverDragonLegion, vv4.0.2
SilverDragonMists, vv4.0.2
SilverDragonVanilla, vv4.0.2
SilverDragonWarlords, vv4.0.2
SilverDragonWrath, vv4.0.2
Skada, v1.7.2
SkillHelper, vv3.2.21
SlideBar, v7.3.1 (<%codename%>)
Stubby, v7.5.5724 (TasmanianThylacine)
SuperDuperMacro, v2.6.1
TargetHealthPercent, v5.0
tdBattlePetScript, v70300.02
tdBattlePetScriptRematch, v70300.01
TellMeWhen, v8.4.2
TheUndermineJournal, v5.1.20180106
TidyPlates, v6.18.11
TidyPlatesThreatPlates, v8.6.1
TidyPlatesHub, v
TidyPlatesWidgets, v
TipHelper, v5.12.DEV.405(/embedded)
TokenSplainer, vr04
TolBaradReminder, v1.3
TomTom, vv70300-1.0.0
TransmogTokens, v1.4.8
WIM, v3.7.14
WorldQuestGroupFinder, v0.27
WorldQuestTracker, v
WoWDBProfiler, v
xanDurability, v3.1
ZygorGuidesViewer, v6.1
BlizRuntimeLib_enUS v7.3.2.70300
(ck=13b8)

commented

Still getting this on my Vengeance DH.

commented

Getting the same issue on July 12 2018:

Date: 2018-07-12 16:34:30
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\Ovale\dist\conditions.lua line 2483:
attempt to index upvalue 'OvaleDemonHunterSoulFragments' (a nil value)
Debug:
Ovale\dist\conditions.lua:2483:
Ovale\dist\conditions.lua:2481
(tail call): ?
Ovale\dist\BestAction.lua:514: visitor()
Ovale\dist\BestAction.lua:798: RecursiveCompute()
Ovale\dist\BestAction.lua:775: PostOrderCompute()
Ovale\dist\BestAction.lua:746:
Ovale\dist\BestAction.lua:736
(tail call): ?
Ovale\dist\BestAction.lua:501: visitor()
Ovale\dist\BestAction.lua:798: RecursiveCompute()
Ovale\dist\BestAction.lua:775: PostOrderCompute()
Ovale\dist\BestAction.lua:746:
Ovale\dist\BestAction.lua:736
(tail call): ?
Ovale\dist\BestAction.lua:727: GetAction()
Ovale\dist\Frame.lua:154:
Ovale\dist\Frame.lua:122
(tail call): ?
Locals:
positionalParams =

{
}
namedParams =
{
}
state = nil
atTime = 846264.009
comparator = nil
limit = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index upvalue 'OvaleDemonHunterSoulFragments' (a nil value)"
OvaleDemonHunterSoulFragments = nil
Compare = defined @interface\AddOns\Ovale\dist\Condition.lua:120

AddOns:
MoncaiCompare, v7.2.0
Swatter, v7.6.5736 (TasmanianThylacine)
Ace3, v
AddOnSkins, v3.73
ArkInventory, v30743
ArkInventoryRules, v10003
ArkInventoryRulesExample, v10000
ArkInventoryRulesTSMGroup, v10701
ArkInventorySearch, v10003
AskMrRobot, v57
AucAdvanced, v7.6.5736 (TasmanianThylacine)
AucFilterBasic, v7.6.5736 (TasmanianThylacine)
AucFilterOutlier, v7.6.5736.5459(/embedded)
AucMatchUndercut, v7.6.5736.5585(/embedded)
AucStatHistogram, v7.6.5736 (TasmanianThylacine)
AucStatiLevel, v7.6.5736 (TasmanianThylacine)
AucStatPurchased, v7.6.5736 (TasmanianThylacine)
AucStatSales, v7.6.5736.5598(/embedded)
AucStatSimple, v7.6.5736 (TasmanianThylacine)
AucStatStdDev, v7.6.5736 (TasmanianThylacine)
AucStatWOWEcon, v7.6.5736.5613(/embedded)
AucUtilAHWindowControl, v7.6.5736.5575(/embedded)
AucUtilAppraiser, v7.6.5736.5727(/embedded)
AucUtilAskPrice, v7.6.5736.5599(/embedded)
AucUtilAutoMagic, v7.6.5736.5732(/embedded)
AucUtilCompactUI, v7.6.5736.5715(/embedded)
AucUtilEasyBuyout, v7.6.5736.5725(/embedded)
AucUtilItemSuggest, v7.6.5736.5651(/embedded)
AucUtilPriceLevel, v7.6.5736.5633(/embedded)
AucUtilScanButton, v7.6.5736.5631(/embedded)
AucUtilScanFinish, v7.6.5736.5725(/embedded)
AucUtilScanProgress, v7.6.5736.4979(/embedded)
AucUtilScanStart, v7.6.5736.5725(/embedded)
AucUtilSearchUI, v7.6.5736.5731(/embedded)
AucUtilSimpleAuction, v7.6.5736.5705(/embedded)
AucUtilVendMarkup, v7.6.5736.4828(/embedded)
Babylonian, v5.1.DEV.332(/embedded)
CallbackHandler10, v
Configator, v5.1.DEV.434(/embedded)
DBMCore, v7.3.31
DBMDefaultSkin, v
DBMSpellTimers, v
DBMStatusBarTimers, v
DebugLib, v5.1.DEV.337(/embedded)
Details, v
DetailsDmgRank, v
DetailsDpsTuning, v
DetailsEncounterDetails, v
DetailsRaidCheck, v
DetailsRaidInfoEmeraldNightmare, v
DetailsRaidInfoNighthold, v
DetailsRaidInfoTombOfSargeras, v
DetailsRaidInfoTrialOfValor, v
DetailsStreamer, v
DetailsTimeAttack, v
DetailsTinyThreat, v
DetailsVanguard, v
ElvUI, v10.74
ElvUISLE, v3.38
GTFO, v4.45.3
HandyNotes, vv1.4.15
HandyNotesLegionTreasures, v1
HereBeDragons10, v1.19-release
LibAboutPanel, vv1.52
LibBabbleCreatureType30, v
LibBabbleRace30, v
LibDBIcon10, v
LibDialog10, vr89
LibDualSpec10, vv1.13
LibExtraTip, v5.12.DEV.435(/embedded)
LibPeriodicTable31, vv3.3.0.595
LibSharedMedia30, v3.0-100
LibStub, v
MonkeySpeed, vv3.3.11
Ovale, v7.3.0.3
ServerHop, v7.3.0.1
SlideBar, v7.6.5736 (TasmanianThylacine)
Stubby, v7.6.5736 (TasmanianThylacine)
TipHelper, v5.12.DEV.405(/embedded)
TomTom, vv70300-1.0.0
WeakAuras, v2.5.12
BlizRuntimeLib_enUS v7.3.5.70300
(ck=a8d)

commented

Thanks for the fix Michal, it worked! I see the problem was mainly a missing export. Looks like there's already a pull request with the same fix, I hope it makes it into the next version.

commented

Thanks for that mwojtkowski :-)

commented

go to your Interface Folder > Ovale > dist > open DemonHunterSoulFragments.lua
and paste

local __exports = LibStub:NewLibrary("ovale/DemonHunterSoulFragments", 10000)
if not __exports then return end
local __class = LibStub:GetLibrary("tslib").newClass
local __Ovale = LibStub:GetLibrary("ovale/Ovale")
local Ovale = __Ovale.Ovale
local __Debug = LibStub:GetLibrary("ovale/Debug")
local OvaleDebug = __Debug.OvaleDebug
local __State = LibStub:GetLibrary("ovale/State")
local OvaleState = __State.OvaleState
local aceEvent = LibStub:GetLibrary("AceEvent-3.0", true)
local insert = table.insert
local GetTime = GetTime
local GetSpellCount = GetSpellCount
local type = type
local pairs = pairs
local OvaleDemonHunterSoulFragmentsBase = OvaleDebug:RegisterDebugging(Ovale:NewModule("OvaleDemonHunterSoulFragments", aceEvent))
local SOUL_FRAGMENTS_BUFF_ID = 228477
local SOUL_FRAGMENTS_SPELL_HEAL_ID = 203794
local SOUL_FRAGMENTS_SPELL_CAST_SUCCESS_ID = 204255
local SOUL_FRAGMENT_FINISHERS = {
    [228477] = true,
    [247454] = true,
    [227225] = true
}
local OvaleDemonHunterSoulFragmentsClass = __class(OvaleDemonHunterSoulFragmentsBase, {
    OnInitialize = function(self)
        if Ovale.playerClass == "DEMONHUNTER" then
            self:SetCurrentSoulFragments(0)
            self:RegisterEvent("PLAYER_REGEN_ENABLED")
            self:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
            self:RegisterEvent("PLAYER_REGEN_DISABLED")
        end
    end,
    OnDisable = function(self)
        if Ovale.playerClass == "DEMONHUNTER" then
            self:UnregisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
            self:UnregisterEvent("PLAYER_REGEN_ENABLED")
            self:UnregisterEvent("PLAYER_REGEN_DISABLED")
        end
    end,
    PLAYER_REGEN_ENABLED = function(self)
        self:SetCurrentSoulFragments()
    end,
    PLAYER_REGEN_DISABLED = function(self)
        self.soul_fragments = {}
        self.last_checked = nil
        self:SetCurrentSoulFragments()
    end,
    COMBAT_LOG_EVENT_UNFILTERED = function(self, event, _2, subtype, _4, sourceGUID, _6, _7, _8, _9, _10, _11, _12, spellID, spellName)
        local me = Ovale.playerGUID
        if sourceGUID == me then
            if subtype == "SPELL_HEAL" and spellID == SOUL_FRAGMENTS_SPELL_HEAL_ID then
                self:SetCurrentSoulFragments(self.last_soul_fragment_count.fragments - 1)
            end
            if subtype == "SPELL_CAST_SUCCESS" and spellID == SOUL_FRAGMENTS_SPELL_CAST_SUCCESS_ID then
                self:SetCurrentSoulFragments(self.last_soul_fragment_count.fragments + 1)
            end
            if subtype == "SPELL_CAST_SUCCESS" and SOUL_FRAGMENT_FINISHERS[spellID] then
                self:SetCurrentSoulFragments(0)
            end
            local now = GetTime()
            if self.last_checked == nil or now - self.last_checked >= 1.5 then
                self:SetCurrentSoulFragments()
            end
        end
    end,
    SetCurrentSoulFragments = function(self, count)
        local now = GetTime()
        self.last_checked = now
        self.soul_fragments = self.soul_fragments or {}
        if type(count) ~= "number" then
            count = GetSpellCount(SOUL_FRAGMENTS_BUFF_ID) or 0
        end
        if count < 0 then
            count = 0
        end
        if self.last_soul_fragment_count == nil or self.last_soul_fragment_count.fragments ~= count then
            local entry = {
                timestamp = now,
                fragments = count
            }
            self:Debug("Setting current soul fragment count to '%d' (at: %s)", entry.fragments, entry.timestamp)
            self.last_soul_fragment_count = entry
            insert(self.soul_fragments, entry)
        end
    end,
    DebugSoulFragments = function(self)
    end,
    SoulFragments = function(self, atTime)
        local currentTime = nil
        local count = nil
        for _, v in pairs(self.soul_fragments) do
            if v.timestamp >= atTime and (currentTime == nil or v.timestamp < currentTime) then
                currentTime = v.timestamp
                count = v.fragments
            end
        end
        if count then
            return count
        end
        return (self.last_soul_fragment_count ~= nil and self.last_soul_fragment_count.fragments) or 0
    end,
})
local DemonHunterSoulFragmentsState = __class(nil, {
    CleanState = function(self)
    end,
    InitializeState = function(self)
    end,
    ResetState = function(self)
    end,
})
__exports.OvaleDemonHunterSoulFragments = OvaleDemonHunterSoulFragmentsClass()
__exports.demonHunterSoulFragmentsState = DemonHunterSoulFragmentsState()
OvaleState:RegisterState(__exports.demonHunterSoulFragmentsState)

save and reload game