sidoine / ovale Goto Github PK
View Code? Open in Web Editor NEWAn add-on for World of Warcraft that displays icons based on scripts
License: MIT License
An add-on for World of Warcraft that displays icons based on scripts
License: MIT License
The right box where it says "Long Cooldown Abilities" Is not working properly
It cannont detect how long is left on a cooldown. Whenever i enter combat it jumps from 2m, 6m and in between. And if im not in combat it claims 10m
I updated my wow client yesterday and I can't seem to get my Ovale to display anymore. I've tried reinstalling the mod but it still isn't displaying correctly. I encounter no error messages, could this be on my end?
Condition BuffPresent(divine_purpose_buff)
never gets true for retribution paladin. I'm not very familiar with your engine, but as I see the reason could be in ovale_paladin_spells.lua:121
.
Define(divine_purpose_buff 90174)
If 90174 is spell id then it's wrong. Right now id for divine purpose is 223819. http://www.wowhead.com/spell=223819/divine-purpose
But if I change Define(divine_purpose_buff 90174)
to Define(divine_purpose_buff 223819)
nothing happens. Hope you know how to fix. Thanks :)
Also SpellInfo(divine_purpose_buff duration=8)
is wrong, new duration is 12
For some reason, the rotation seems to be stuck on Demonbolt. Will never move the rotation to Dreadstalkers, Hand of Guldan or Doom.
If talented into Bloody Talons on feral, pre-combat suggests Healing Touch as normal, but if the buff is present and has significant time remaining eg. or is present at all it will not display another spell until you land your first rake or get in combat. This doesn't match behavior that it should was showing previously in draenor were after it would recognize BT then cat ,prowl ,rake would be suggested until BT had around 10 seconds remaining.
Low priority issue but still a QoL change.
I thought Windwalker support was working, but currently the default script is disabled.
Error "Unknown spell with ID 124634 used in SpellCooldown (124634).
Message: Interface\AddOns\Ovale\Future.lua:1013: attempt to compare number with nil
Time: 08/14/16 15:00:25
Count: 5
Stack: Interface\AddOns\Ovale\Future.lua:1013: in function LastSpellSent' Interface\AddOns\Ovale\Aura.lua:732: in function
LostAuraOnGUID'
Interface\AddOns\Ovale\Aura.lua:804: in function ScanAuras' Interface\AddOns\Ovale\Aura.lua:523: in function
?'
...chy\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:146: in function <...chy\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:146>
[string "safecall Dispatcher[2]"]:4: in function <[string "safecall Dispatcher[2]"]:4>
[string "safecall Dispatcher[2]"]:13: in function ?' ...chy\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:91: in function
Fire'
...face\AddOns\Archy\Libs\AceEvent-3.0\AceEvent-3.0.lua:120: in function <...face\AddOns\Archy\Libs\AceEvent-3.0\AceEvent-3.0.lua:119>
Locals:
In Spellflash.lua, line 297, shown below, the Action bar icon overlay color for the Main Attack icon are permanently set to "white" immediately prior to being passed to SpellFlash.
local color = COLORTABLE["white"]
Commenting out the line allows the user-chosen color to be passed to SpellFlash.
Need to know what it does
I think Balance druid is broken (on the 7.0 simulationcraft druid balance t18m profile, as the default one is blank and disabled for some reason). Just suggests moonfire, sunfire, and solar wrath. It doesn't suggest using starsurge or starfall when near max astral power nor does it suggest using Incarnation: chosen of elune or celestial alignment. Randomly it will suggest spamming starsurge even when you don't have the astral power to do so. No interrupt spell suggested as well.
As of 7.0.10.1, I still cannot get the "Call Dreadstalkers" spell to work. This is the definition I'm using:
Define(call_dreadstalkers 104316)
SpellInfo(call_dreadstalkers cooldown=15 soulshards=2 gcd=1.5)
And if you're curious, this is the script I'm using:
AddIcon specialization=2 help=main
{
if target.DebuffRemaining(doom_debuff) <= 6 Spell(doom)
if TalentPoints(summon_darkglare_talent) Spell(summon_darkglare)
Spell(call_dreadstalkers)
if SoulShards() >= 1 Spell(summon_doomguard)
if SoulShards() >= 4 Spell(hand_of_guldan)
if TalentPoints(grimoire_of_service_talent) Spell(grimoire_felguard)
if not pet.BuffPresent(demonic_empowerment_buff) and not InFlightToTarget(demonic_empowerment) Spell(demonic_empowerment)
if TalentPoints(soul_harvest_talent) Spell(soul_harvest)
Spell(felguard_felstorm)
if ManaPercent() < 60 and Speed() > 0 MVNG.Spell(life_tap)
if ManaPercent() > 60 and Speed() > 0 MVNG.Spell(demonwrath)
if ManaPercent() < 35 Spell(life_tap)
Spell(shadow_bolt)
}
Firstly - thank you very much for maintaining this add-on - we very much appreciate your work.
Using the add-on with multiple target rotations selected, Crash Lightning never shows for use no matter how many targets are engaged. Are you able to fix this?
Thank You.
seems to happen while i'm channeling either mind flay or mind sear
Message: Interface\AddOns\Ovale\Future.lua:1007: attempt to compare nil with number
Time: 08/28/16 22:37:14
Count: 3
Stack: (tail call): ?
Interface\AddOns\Ovale\Future.lua:1007: in function LastSpellSent' Interface\AddOns\Ovale\Aura.lua:732: in function
LostAuraOnGUID'
Interface\AddOns\Ovale\Aura.lua:804: in function ScanAuras' Interface\AddOns\Ovale\Aura.lua:523: in function
?'
...bot\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147: in function <...bot\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147>
[string "safecall Dispatcher[2]"]:4: in function <[string "safecall Dispatcher[2]"]:4>
[string "safecall Dispatcher[2]"]:13: in function ?' ...bot\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: in function
Fire'
...AddOns\AskMrRobot\Libs\AceEvent-3.0\AceEvent-3.0.lua:120: in function <...AddOns\AskMrRobot\Libs\AceEvent-3.0\AceEvent-3.0.lua:119>
Locals:
The current pool_resource,for_next=1
functionality is rather unwieldy. Ovale evaluates the entire action list as opposed to Simulationcraft that stops once it gets a valid action/pool_resource. What pool_resource,for_next=1
means to Ovale is basically to ignore the resource cost when determining the BestAction. It currently does this through an if/unless pair, where the unless portion checks to see if the action will be usable sans the resource cost.
I've implemented a much better way to get this done doing several things: #63
I separated out any extra time required to pool resources into it's own variable actionResourceExtend
instead of adding it to either the actionCooldownStart
or actionCooldownDuration
.
When computing the action (e.g. the time the action will be usable), I add this value to the starting timestamp of the action if the pool_resource named parameter is not set to 1. If pool_resource is set to 1, then only the cooldown or GCD is considered when determining the starting timestamp of the action.
I then modify the Frame to always add actionResourceExtend
to the start if the ability is not on cooldown (or only the global cooldown) or actionCooldownDuration
if the ability is on cooldown.
Because I've now separated any extra time needed to generate a resource, the portion of code that determines if the icon should turn red is greatly simplified. We no longer need to manipulate the starting time of the action in the Frame and can simply run a check in the icon update function directly. This was actually completely non-functional as near as I can tell in version 7.0.14.
I added an extraPower variable to TimeToPower
and GetTimeToSpell
. This allows you to send a direct cost increase to the two functions that is not affected by any cost reductions. It is used through the extra_amount=
named parameter in a Spell()
. This matches both the way extra_amount works in simulationcraft as well as Ferocious Bite's extra energy consumption (and possibly others that similarly can consume extra resources). This must be a static number as you can't send a script's function as a named parameter.
What is left is to change the simulationcraft translator to take advantage of the new functionality. A simple example:
#pool_resource,for_next=1
#swipe_cat,if=spell_targets.swipe_cat>=8
if Enemies() >= 8 Spell(swipe_cat)
unless Enemies() >= 8 and SpellUsable(swipe_cat) and SpellCooldown(swipe_cat) <
...TimeToEnergyFor(swipe_cat)
can simply become
#pool_resource,for_next=1
#swipe_cat,if=spell_targets.swipe_cat>=8
if Enemies() >= 8 Spell(swipe_cat pool_resource=1)
With extra_amount (which Ovale currently isn't even translating correctly anyhow):
#pool_resource,for_next=1,extra_amount=10
#swipe_cat,if=spell_targets.swipe_cat>=8
if Enemies() >= 8 Spell(swipe_cat)
doesn't require the extra amount
unless Enemies() >= 8 and SpellUsable(swipe_cat) and SpellCooldown(swipe_cat) <
...TimeToEnergy(10)
doesn't require the cost of Swipe
can simply become
#pool_resource,for_next=1,extra_amount=10
#swipe_cat,if=spell_targets.swipe_cat>=8
if Enemies() >= 8 Spell(swipe_cat pool_resource=1 extra_amount=10)
It's probably going to be a while before I can really dig into the translator. Should be explained thoroughly in case someone has the time before I get to it.
Noticed this on my Fury Warrior. Probably shows up on any class that has ability cooldowns that match up with an exact multiple of the GCD.
Fury Warrior mostly uses these: Bloodthirst (4.5 hasted cd), Raging Blow (4.5 hasted cd), and Furious Slash (no CD) in that priority. The problem is more often than not, once you've cycled through it (BT -> RB -> FS) it should now suggest Bloodthirst again but instead suggests a second Furious Slash.
After messing around with it, I believe the problem is likely to do with how Blizzard rounds (do they truncate?). The durations returned by GetSpellCooldown()
don't quite match up. I have no item stat procs of any kind on this character or all these tests. On my Fury Warrior with 16.86% Haste I get a GCD of 1.283 (1.5/1.1686 = 1.28359) but a cooldown on Bloodthirst of 3.851 (4.5/1.1686 = 3.85076). It does seem that the duration reported by the function is exact. I did 10 casts of a Furious Slash and 6 of Bloodthirst and they had time between casts of exactly 1.283 and 3.851 respectively. Occasionally the GCD was short, sometimes by quite a bit (one cast at 8.394, next at 9.549, 128ms faster than expected) but I think that's a bug on the server's end allowing the cast to go off too early (you could actually hear the sound effect for the swing double I think from the game client not expecting it till later).
I think that some sort of tolerance could be built in to fix the problem, but couldn't quite figure out where to put it in the time I had today. I think the best option might be to add an option under Advanced that would allow you to set an amount of time (similar to the Aura Lag) that would consider a GCD spell "ready" that much time sooner. You could probably have a default that was very low (like 10ms) but some people might like theirs longer. I'd probably set it to 150ms on my fury warrior for those too fast GCDs like above. Different classes/specs might use different values here but the default should probably be pretty low. Should be applied only to GCD spells since Off-GCD spells can simply be used as soon as they're ready regardless of the GCD.
Version: 7.0.11.0
I see in this most recent update that the GCD for DK's was updated to 1.0 non-hasted. However, while that was true from possibly the beginning of the spec until now, as of Legion DK's have been placed on a 1.5s hasted gcd. True at least for Frost and Unholy, no personal experience with Blood, but likely them as well.
Here is a thread discussing this change: http://www.arenajunkies.com/topic/348799-death-knight-gcd-in-legion/
You might want to verify the current status of the other previously 1.0 non-hasted gcd classes too, they might have been changed for Legion as well. I can understand why they'd do it, as it makes it much easier for Haste to scale as a stat for these classes.
You can test with the following:
Include(ovale_rogue_spells)
AddIcon {
Spell(shadowstrike)
}
Shadowstrike shows up for Stealth/Vanish, but not Shadow Dance.
Current rotation isn't complete.
I'll try to explain:
If combopoints=5 then {
If bloodtalonstalent AND PredatorySwiftnessbuff present then {
healing touch
}
Else {
if savageroarbuff absent then{
savage roar
}
If targetRipdebuff absent then{
rip
}
Ferocious Bite
}
}
Else {
If clearcastingbuff present then {
trash
}
If targetrakedebuff absent then {
rake
}
shred
}
Sorry, i'm not a coder, i tryed to explain rotation with some basic knowledge.
I have SpellFlashCore enabled and the only icon that blinks is Arcane Blast, no other buttons flash. I have SpellFlash and Bitten's library disabled. And Demon Hunter doesn't flash at all.
These are the two errors I'm getting:
Date: 2016-08-19 17:56:59
ID: 15
Error occured in: Global
Count: 1
Message: ..\AddOns\SpellFlash\SpellFlash.lua line 1013:
attempt to compare number with string
Debug:
SpellFlash\SpellFlash.lua:1013: ?()
SpellFlash\SpellFlash.lua:842:
SpellFlash\SpellFlash.lua:841
Locals:
event = "UNIT_SPELLCAST_SENT"
unit = "player"
SpellName = "Fel Rush"
rank = ""
target = ""
ID = "3-3131-0-13607-195072-00013780AD"
(_temporary) =
AddOns:
Swatter, v7.0.5664 (TasmanianThylacine)
WowheadLooter, v60014
NPCScan, v7.0.3.7
NPCScanOverlay, v7.0.3.4
AchieveIt, v
AchievementsReminder, v
AckisRecipeList, v7.0.3.6
ACP, v3.4.28
AlternateButtonTemplate, v0.7.20
Altoholic, vr171
AskMrRobot, v39
AtlasLoot, vv8.01.00
AucAdvanced, v7.0.5664 (TasmanianThylacine)
AucFilterBasic, v7.0.5664 (TasmanianThylacine)
AucFilterOutlier, v7.0.5664.5459(7.0/embedded)
AucMatchUndercut, v7.0.5664.5585(7.0/embedded)
AucStatHistogram, v7.0.5664 (TasmanianThylacine)
AucStatiLevel, v7.0.5664 (TasmanianThylacine)
AucStatPurchased, v7.0.5664 (TasmanianThylacine)
AucStatSales, v7.0.5664.5598(7.0/embedded)
AucStatSimple, v7.0.5664 (TasmanianThylacine)
AucStatStdDev, v7.0.5664 (TasmanianThylacine)
AucStatWOWEcon, v7.0.5664.5613(7.0/embedded)
AucUtilAHWindowControl, v7.0.5664.5575(7.0/embedded)
AucUtilAppraiser, v7.0.5664.5653(7.0/embedded)
AucUtilAskPrice, v7.0.5664.5599(7.0/embedded)
AucUtilAutoMagic, v7.0.5664.5587(7.0/embedded)
AucUtilCompactUI, v7.0.5664.5629(7.0/embedded)
AucUtilEasyBuyout, v7.0.5664.5576(7.0/embedded)
AucUtilFixAH, v7.0.5664 (TasmanianThylacine)
AucUtilItemSuggest, v7.0.5664.5651(7.0/embedded)
AucUtilPriceLevel, v7.0.5664.5633(7.0/embedded)
AucUtilScanButton, v7.0.5664.5631(7.0/embedded)
AucUtilScanFinish, v7.0.5664.5588(7.0/embedded)
AucUtilScanProgress, v7.0.5664.4979(7.0/embedded)
AucUtilScanStart, v7.0.5664.5347(7.0/embedded)
AucUtilSearchUI, v7.0.5664.5657(7.0/embedded)
AucUtilSimpleAuction, v7.0.5664.5654(7.0/embedded)
AucUtilVendMarkup, v7.0.5664.4828(7.0/embedded)
AutoLootSpec, v6.0.0
Babylonian, v5.1.DEV.332(/embedded)
BadPet, vv1.0.5
BankItems, v6.1.0.0
Barn, vv1.3
BattlePetDailyTamer, v2.1.0
BattlegroundTargets, v60200-1
BattlePetsCollector, v6.0.3.10
BeanCounter, v7.0.5664 (TasmanianThylacine)
BGDefender, v1.6.9
BGSpy, v1.2.6
BodyGuardAway, v2.2
BodyguardHealth, vv2.3.2
Breakables, v1.4 (Revision: @project-revision@)
CantHealYou, v3.40
Collectinator, v7.0.3.1
CollectMe, v2.8.2
Configator, v5.1.DEV.406(/embedded)
DailyGlobalCheck, v
DailyGlobalCheckWodTreasureChests, v
DataStore, vr59
DataStoreAchievements, vr42
DataStoreAgenda, vr23
DataStoreAuctions, v6.0.001
DataStoreCharacters, vr36
DataStoreContainers, vr53
DataStoreCrafts, vr73
DataStoreCurrencies, vr31
DataStoreGarrisons, vr16
DataStoreInventory, vr46
DataStoreMails, vr46
DataStorePets, vr39
DataStoreQuests, vr36
DataStoreReputations, vr37
DataStoreSpells, vr27
DataStoreStats, vr26
DataStoreTalents, vr54
DBMCore, v
DBMDefaultSkin, v
DBMInterrupts, v6.2.0
DBMStatusBarTimers, v
DBMWorldEvents, v
DebugLib, v5.1.DEV.337(/embedded)
Enchantrix, v7.0.5664 (TasmanianThylacine)
EnchantrixBarker, v7.0.5664 (TasmanianThylacine)
ExRT, v3740
ExtraBar, v0.7.20
Factionizer, v6.02.00.13 16.02.02
FollowerLocationInfo, v0.12-release2
FollowerLocationInfoData, v0.9-release
FollowerLocationInfoJournal, v0.12-release2
Frodo, v1.1
fubaTanaanObjectives, v1.1
Gatherer, v5.0.0
GatherMate2, v1.36.1
Glamour, v1.4.4
GlyphReporter, v1.6.7
Grail, v080
GrailAchievements, v011
GrailReputations, v007
GTFO, v4.38.5
GuildGreet, v7.0.0
GuildMemberInfo, v0.2.5
GuildMemberInfoTradeSkills, v0.4.7
HandyNotes, vv1.4.8
HandyNotesDraenorTreasures, v1.19c
HandyNotesTimelessIsleChests, v1.14
HandyNotesTreasureHunter, v1
HealersHaveToDie, v2.4.2
HunterPets, v2
HunterPetsOwned, v2
HunterPetsUI, v2
IllusionPreview, v1.1
iLvLr, v2.3.105
Informant, v7.0.5664 (TasmanianThylacine)
Innervator2, v1.20
IskarAssist, v
LFRAdvanced, v7.0.3.22267
LibExtraTip, v5.12.DEV.409(/embedded)
LibSharedMedia30, v3.0-95
LifebloomTracker, v2.1.1
LostTreasures, v3.03
Ludwig, v7.0.0
Mapster, v1.7.2
MarkAssistant, v6.2.0
MasterPlanA, vA
MessageBoard, v
MillHelp, v2.0.14
MillHelpGlyphs, v2.0.14
MogIt, v3.6.3
MogItHighlighter, vv1.3.2
mountainomounts, vv1.2
MoveAnything, v16.0.7
MyRolePlay, v7.0.3.404
NPCRPGossip, v1.2.4
NugComboBar, v
Ovale, v7.0.12.0
Overachiever, v0.84
Paste, v1.4.9
Pawn, v2.0.7
PetBattleTeams, v3.3.0
PetJournalEnhanced, v2.9.18
PetTracker, v7.0.0
PetTrackerBreeds, v
PetTrackerBroker, v
PetTrackerConfig, v
PetTrackerJournal, v
PetTrackerSwitcher, v
PetTrackerUpgrades, v
Postal, vv3.5.8
Prat30, v3.6.14
Prat30Libraries, v
PvPHelper, vSeason-9
QuestHubber, v
QuestHubberAzeroth, v
QuestHubberCataclysm, v
QuestHubberDaily, v
QuestHubberNorthrend, v
QuestHubberOutland, v
QuestHubberPandaria, v
RaidAchieveFilter, v1.9
RaidAchievement, v
RaidAchievementOldModules, v
RareCoordinator, v
Rarity, v1.0
RarityOptions, v
Recount, vv7.0.3e release
Redprints, vv1.1.3
SavedInstances, v7.0.2
saystuns, v1.2.0
SaySapped, v2016-08-15
ServerHop, v2.0.1
SetCollector, v2.1.4
SlideBar, v7.0.5664 (TasmanianThylacine)
SpeedyLoad, v2.2.2
SpellFlash, v6.24.1
SpellFlashCore, v2.1.3
Stubby, v7.0.5664 (TasmanianThylacine)
TabardAddict, v2.32
TidyPlates, v6.18.Beta20
TidyPlatesGraphite, v
TidyPlatesGrey, v
TidyPlatesNeon, v
TidyPlatesQuatre, v
TidyPlatesHub, v
TidyPlatesWidgets, v
TierTokenTooltip, v1.05
TiffysPetSummoner, v1.1.2
TimelessSpotter, v
TipHelper, v5.12.DEV.405(/embedded)
Titan, v5.7.4.70000
TitanBag, v5.7.4.70000
TitanClock, v5.7.4.70000
TitanCurrency, v7.0.3a
TitanGold, v5.7.4.70000
TitanGuild, v7.0.3.3
TitanLocation, v5.7.4.70000
TitanLootType, v5.7.4.70000
TitanMail, v7.01
TitanPerformance, v5.7.4.70000
TitanProfessions, v5.0.0
TitanRepair, v5.7.4.70000
TitanReputation, v3.8.7b
TitanTradeCooldown, v3.1.8.30200
TitanVolume, v5.7.4.70000
TitanXP, v5.7.4.70000
TolBaradMaster, v1.5
TomTom, vv70000-1.1.0
ToyBoxEnhanced, v1.2.1
TradeskillHD, v2.03
VellumWithdrawer, vv1.2.0
WeakAuras, v2.2.1.1
Wholly, v057
WIM, v3.7.9
WoWDBProfiler, v
BlizRuntimeLib_enUS v7.0.3.70000
(ck=17a4)
Date: 2016-08-19 17:56:52
ID: 16
Error occured in: Global
Count: 3
Message: ..\AddOns\Ovale\PaperDoll.lua line 273:
Usage: GetSpellBonusDamage(school)
Debug:
Ovale\PaperDoll.lua:273: PLAYER_DAMAGE_DONE_MODS()
Ovale\PaperDoll.lua:430: ?()
...eIt\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147:
...eIt\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147
[string "safecall Dispatcher[1]"]:4:
[string "safecall Dispatcher[1]"]:4
[string "safecall Dispatcher[1]"]:13: ?()
...eIt\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: Fire()
...\AddOns\AchieveIt\libs\AceEvent-3.0\AceEvent-3.0.lua:120:
...\AddOns\AchieveIt\libs\AceEvent-3.0\AceEvent-3.0.lua:119
Locals:
None
AddOns:
Swatter, v7.0.5664 (TasmanianThylacine)
WowheadLooter, v60014
NPCScan, v7.0.3.7
NPCScanOverlay, v7.0.3.4
AchieveIt, v
AchievementsReminder, v
AckisRecipeList, v7.0.3.6
ACP, v3.4.28
AlternateButtonTemplate, v0.7.20
Altoholic, vr171
AskMrRobot, v39
AtlasLoot, vv8.01.00
AucAdvanced, v7.0.5664 (TasmanianThylacine)
AucFilterBasic, v7.0.5664 (TasmanianThylacine)
AucFilterOutlier, v7.0.5664.5459(7.0/embedded)
AucMatchUndercut, v7.0.5664.5585(7.0/embedded)
AucStatHistogram, v7.0.5664 (TasmanianThylacine)
AucStatiLevel, v7.0.5664 (TasmanianThylacine)
AucStatPurchased, v7.0.5664 (TasmanianThylacine)
AucStatSales, v7.0.5664.5598(7.0/embedded)
AucStatSimple, v7.0.5664 (TasmanianThylacine)
AucStatStdDev, v7.0.5664 (TasmanianThylacine)
AucStatWOWEcon, v7.0.5664.5613(7.0/embedded)
AucUtilAHWindowControl, v7.0.5664.5575(7.0/embedded)
AucUtilAppraiser, v7.0.5664.5653(7.0/embedded)
AucUtilAskPrice, v7.0.5664.5599(7.0/embedded)
AucUtilAutoMagic, v7.0.5664.5587(7.0/embedded)
AucUtilCompactUI, v7.0.5664.5629(7.0/embedded)
AucUtilEasyBuyout, v7.0.5664.5576(7.0/embedded)
AucUtilFixAH, v7.0.5664 (TasmanianThylacine)
AucUtilItemSuggest, v7.0.5664.5651(7.0/embedded)
AucUtilPriceLevel, v7.0.5664.5633(7.0/embedded)
AucUtilScanButton, v7.0.5664.5631(7.0/embedded)
AucUtilScanFinish, v7.0.5664.5588(7.0/embedded)
AucUtilScanProgress, v7.0.5664.4979(7.0/embedded)
AucUtilScanStart, v7.0.5664.5347(7.0/embedded)
AucUtilSearchUI, v7.0.5664.5657(7.0/embedded)
AucUtilSimpleAuction, v7.0.5664.5654(7.0/embedded)
AucUtilVendMarkup, v7.0.5664.4828(7.0/embedded)
AutoLootSpec, v6.0.0
Babylonian, v5.1.DEV.332(/embedded)
BadPet, vv1.0.5
BankItems, v6.1.0.0
Barn, vv1.3
BattlePetDailyTamer, v2.1.0
BattlegroundTargets, v60200-1
BattlePetsCollector, v6.0.3.10
BeanCounter, v7.0.5664 (TasmanianThylacine)
BGDefender, v1.6.9
BGSpy, v1.2.6
BodyGuardAway, v2.2
BodyguardHealth, vv2.3.2
Breakables, v1.4 (Revision: @project-revision@)
CantHealYou, v3.40
Collectinator, v7.0.3.1
CollectMe, v2.8.2
Configator, v5.1.DEV.406(/embedded)
DailyGlobalCheck, v
DailyGlobalCheckWodTreasureChests, v
DataStore, vr59
DataStoreAchievements, vr42
DataStoreAgenda, vr23
DataStoreAuctions, v6.0.001
DataStoreCharacters, vr36
DataStoreContainers, vr53
DataStoreCrafts, vr73
DataStoreCurrencies, vr31
DataStoreGarrisons, vr16
DataStoreInventory, vr46
DataStoreMails, vr46
DataStorePets, vr39
DataStoreQuests, vr36
DataStoreReputations, vr37
DataStoreSpells, vr27
DataStoreStats, vr26
DataStoreTalents, vr54
DBMCore, v
DBMDefaultSkin, v
DBMInterrupts, v6.2.0
DBMStatusBarTimers, v
DebugLib, v5.1.DEV.337(/embedded)
Enchantrix, v7.0.5664 (TasmanianThylacine)
EnchantrixBarker, v7.0.5664 (TasmanianThylacine)
ExRT, v3740
ExtraBar, v0.7.20
Factionizer, v6.02.00.13 16.02.02
FollowerLocationInfo, v0.12-release2
FollowerLocationInfoData, v0.9-release
FollowerLocationInfoJournal, v0.12-release2
Frodo, v1.1
fubaTanaanObjectives, v1.1
Gatherer, v5.0.0
GatherMate2, v1.36.1
Glamour, v1.4.4
GlyphReporter, v1.6.7
Grail, v080
GrailReputations, v007
GTFO, v4.38.5
GuildGreet, v7.0.0
GuildMemberInfo, v0.2.5
GuildMemberInfoTradeSkills, v0.4.7
HandyNotes, vv1.4.8
HandyNotesDraenorTreasures, v1.19c
HandyNotesTimelessIsleChests, v1.14
HandyNotesTreasureHunter, v1
HealersHaveToDie, v2.4.2
HunterPets, v2
HunterPetsOwned, v2
HunterPetsUI, v2
IllusionPreview, v1.1
iLvLr, v2.3.105
Informant, v7.0.5664 (TasmanianThylacine)
Innervator2, v1.20
IskarAssist, v
LFRAdvanced, v7.0.3.22267
LibExtraTip, v5.12.DEV.409(/embedded)
LibSharedMedia30, v3.0-95
LifebloomTracker, v2.1.1
LostTreasures, v3.03
Ludwig, v7.0.0
Mapster, v1.7.2
MarkAssistant, v6.2.0
MasterPlanA, vA
MessageBoard, v
MillHelp, v2.0.14
MillHelpGlyphs, v2.0.14
MogIt, v3.6.3
MogItHighlighter, vv1.3.2
mountainomounts, vv1.2
MoveAnything, v16.0.7
MyRolePlay, v7.0.3.404
NPCRPGossip, v1.2.4
NugComboBar, v
Ovale, v7.0.12.0
Overachiever, v0.84
Paste, v1.4.9
Pawn, v2.0.7
PetBattleTeams, v3.3.0
PetJournalEnhanced, v2.9.18
PetTracker, v7.0.0
PetTrackerBreeds, v
PetTrackerBroker, v
PetTrackerJournal, v
PetTrackerSwitcher, v
PetTrackerUpgrades, v
Postal, vv3.5.8
Prat30, v3.6.14
Prat30Libraries, v
PvPHelper, vSeason-9
QuestHubber, v
QuestHubberAzeroth, v
QuestHubberCataclysm, v
QuestHubberDaily, v
QuestHubberNorthrend, v
QuestHubberOutland, v
QuestHubberPandaria, v
RaidAchieveFilter, v1.9
RaidAchievement, v
RaidAchievementOldModules, v
RareCoordinator, v
Rarity, v1.0
RarityOptions, v
Recount, vv7.0.3e release
Redprints, vv1.1.3
SavedInstances, v7.0.2
saystuns, v1.2.0
SaySapped, v2016-08-15
ServerHop, v2.0.1
SetCollector, v2.1.4
SlideBar, v7.0.5664 (TasmanianThylacine)
SpeedyLoad, v2.2.2
SpellFlash, v6.24.1
SpellFlashCore, v2.1.3
Stubby, v7.0.5664 (TasmanianThylacine)
TabardAddict, v2.32
TidyPlates, v6.18.Beta20
TidyPlatesGraphite, v
TidyPlatesGrey, v
TidyPlatesNeon, v
TidyPlatesQuatre, v
TidyPlatesHub, v
TidyPlatesWidgets, v
TierTokenTooltip, v1.05
TiffysPetSummoner, v1.1.2
TimelessSpotter, v
TipHelper, v5.12.DEV.405(/embedded)
Titan, v5.7.4.70000
TitanBag, v5.7.4.70000
TitanClock, v5.7.4.70000
TitanCurrency, v7.0.3a
TitanGold, v5.7.4.70000
TitanGuild, v7.0.3.3
TitanLocation, v5.7.4.70000
TitanLootType, v5.7.4.70000
TitanMail, v7.01
TitanPerformance, v5.7.4.70000
TitanProfessions, v5.0.0
TitanRepair, v5.7.4.70000
TitanReputation, v3.8.7b
TitanTradeCooldown, v3.1.8.30200
TitanVolume, v5.7.4.70000
TitanXP, v5.7.4.70000
TolBaradMaster, v1.5
TomTom, vv70000-1.1.0
ToyBoxEnhanced, v1.2.1
TradeskillHD, v2.03
VellumWithdrawer, vv1.2.0
WeakAuras, v2.2.1.1
Wholly, v057
WIM, v3.7.9
WoWDBProfiler, v
BlizRuntimeLib_enUS v7.0.3.70000
(ck=1760)
Currently, if a spell has SpellAddTargetDebuff setup, if that ability is parried (and I'm assuming misses by other means). Ovale will consider the debuff applied for quite a while, about 4 to 5 seconds, and then fixes itself. This can cause major problems as chances are we're trying to keep that ability up so Ovale needs to recognize instantly that the ability missed and didn't actually apply the debuff.
Example: SpellAddTargetDebuff(rake rake_debuff=1)
EDIT: I had initially fixed this by simply removing those lines, but that causes snapshotting issues similar to #9.
EDIT2: Removed mention of inconsistency with time stamps. Ovale always has that issue with the debug code:
OvaleAura: Snapshot stats for HARMFUL Rake (155722) on Creature-0-3136-1159-17718-87320-00001F7E4E applied by Rake (1822) from 211483.618000, now=211494.766000, aura.serial=106
I am getting this error code at login since the update.
Date: 2016-09-01 19:58:33
ID: 2
Error occured in: Global
Count: 664
Message: ..\AddOns\Ovale\Power.lua line 378:
attempt to concatenate local 'powerType' (a boolean value)
Debug:
Ovale\Power.lua:378: PowerCost()
Ovale\Power.lua:715: TimeToPower()
Ovale\SpellBook.lua:514: GetTimeToSpell()
Ovale\BestAction.lua:269:
Ovale\BestAction.lua:209
(tail call): ?
Ovale\BestAction.lua:520: ?()
Ovale\BestAction.lua:480: RecursiveCompute()
Ovale\BestAction.lua:459: PostOrderCompute()
Ovale\BestAction.lua:420: Compute()
Ovale\BestAction.lua:812: ?()
Ovale\BestAction.lua:480: RecursiveCompute()
Ovale\BestAction.lua:459: PostOrderCompute()
Ovale\BestAction.lua:420: Compute()
Ovale\BestAction.lua:396: GetAction()
Ovale\Frame.lua:212: OnUpdate()
Ovale\Frame.lua:89:
Ovale\Frame.lua:88
Locals:
self = {
IsStance = defined @interface\AddOns\Ovale\Stance.lua:182
DebugUnitAuras = defined @interface\AddOns\Ovale\Aura.lua:1242
class = "DEMONHUNTER"
ApplySpellAuras = defined @interface\AddOns\Ovale\Aura.lua:1297
UpdateCounters = defined @interface\AddOns\Ovale\Future.lua:949
taggedEnemies = 0
lastEnable =
I was having trouble with my custom scripts, recommending wrong spells and such, I eventually narrowed it down to SpellCooldown() not returning correctly, this could possible apply to others such as SpellChargeCooldown as well.
Simple way to confirm this bug, I am using an unholy DK for this, but you can quite easily modify it for any class with a cooldown spell:
AddIcon specialization=unholy
{
if SpellCooldown(death_and_decay) Spell(death_and_decay text=true)
if not SpellCooldown(death_and_decay) Spell(death_and_decay text=false)
}
This basically adds an extra icon which is a visual display of whether the condition is returning true or false. If the spell is on cooldown it should show the icon with the text true in the center of the icon, if it is not on cooldown it should show the icon with the text false in the center.
Use Death and Decay or whichever spell you use for the test, and the box should change the text, however it never does, it always shows "False" meaning the functions are returning that spells are never on cooldown. I tested this with several DK cooldown spells, so it definitely seems to be a problem with the condition itself.
While talented into Whirling Dragon Punch, the suggester is not taking into account if the spell is ready or not. It is just checking the cooldown. Whirling Dragon Punch is only available when Rising Sun Kick and Fists of Fury are currently on cooldown. However in Ovale, it is asking to use the spell when it is not ready yet.
This is coded as such in Simulationcraft's ready function for the spell so I only need to tell to use Whirling Dragon Punch without any checks in the APL. If you want me to, I can add those checks into the APL for you; but for SimC, they are not needed.
Add a condition for script Trait() that works the same way as Talent()
Should return the selected rank (with or without relic boost, possibly as a parameter).
Should also support the less, equal, more, ... syntax and return a boolean when using this syntax.
A lua error happens when mounting up in latest version 7.0.15.0
Steps to reproduce.
Message: Interface\AddOns\Ovale\Power.lua:368: attempt to perform arithmetic on local 'powerRate' (a nil value)
Time: 09/01/16 16:58:52
Count: 523
Stack: Interface\AddOns\Ovale\Power.lua:368: in function `GetPower'
Interface\AddOns\Ovale\Power.lua:716: in function `TimeToPower'
Interface\AddOns\Ovale\SpellBook.lua:514: in function `GetTimeToSpell'
Interface\AddOns\Ovale\BestAction.lua:269: in function <Interface\AddOns\Ovale\BestAction.lua:209>
(tail call): ?
Interface\AddOns\Ovale\BestAction.lua:520: in function `?'
Interface\AddOns\Ovale\BestAction.lua:480: in function `RecursiveCompute'
Interface\AddOns\Ovale\BestAction.lua:459: in function `PostOrderCompute'
Interface\AddOns\Ovale\BestAction.lua:420: in function `Compute'
Interface\AddOns\Ovale\BestAction.lua:812: in function `?'
Interface\AddOns\Ovale\BestAction.lua:480: in function `RecursiveCompute'
Interface\AddOns\Ovale\BestAction.lua:459: in function `PostOrderCompute'
Interface\AddOns\Ovale\BestAction.lua:420: in function `Compute'
Interface\AddOns\Ovale\BestAction.lua:396: in function `GetAction'
Interface\AddOns\Ovale\Frame.lua:212: in function `OnUpdate'
Interface\AddOns\Ovale\Frame.lua:89: in function <Interface\AddOns\Ovale\Frame.lua:88>
Locals: self = <table> {
currentSpellId = 189999
IsStance = <function> defined @Interface\AddOns\Ovale\Stance.lua:182
DebugUnitAuras = <function> defined @Interface\AddOns\Ovale\Aura.lua:1242
class = "PALADIN"
isInitialized = true
ApplySpellAuras = <function> defined @Interface\AddOns\Ovale\Aura.lua:1297
GetTimeToSpell = <function> defined @Interface\AddOns\Ovale\SpellBook.lua:497
UpdateCounters = <function> defined @Interface\AddOns\Ovale\Future.lua:949
specialization = 2
hasteRating = 2155
level = 102
endCast = 1294213.245
counter = <table> {
}
spellHaste = 17.591835021973
GetAuraByGUID = <function> defined @Interface\AddOns\Ovale\Aura.lua:1465
GetStateDuration = <function> defined @Interface\AddOns\Ovale\State.lua:179
channel = false
startCast = 1294211.745
lastSpellId = 190784
combopoints = 0
GetSpellCharges = <function> defined @Interface\AddOns\Ovale\Cooldown.lua:517
taggedEnemies = 0
offHandWeaponDamage = 0
soulshards = 0
RequireCooldownHandler = <function> defined @Interface\AddOns\Ovale\Cooldown.lua:249
multistrike = 0
DebugPower = <function> defined @Interface\AddOns\Ovale\Power.lua:742
serial = 80743
lastCast = <table> {
}
activeEnemies = 0
powerRate = <table> {
}
GetCD = <function> defined @Interface\AddOns\Ovale\Cooldown.lua:419
meleeCrit = 17.458181381226
energy = 0
IsActiveAura = <function> defined @Interface\AddOns\Ovale\Aura.lua:1273
multistrikeRating = 0
Log = <function> defined @Interface\AddOns\Ovale\State.lua:205
IsUsableSpell = <function> defined @Interface\AddOns\Ovale\SpellBook.lua:453
agility = 1422
meleeHaste = 17.591835021973
lastEnable = <table> {
}
PutState = <function> defined @Interface\AddOns\Ovale\State.lua:185
alternate = 0
spellBonusDamage = 9834
RequireHealthPercentHandler = <function> defined @Interface\AddOns\Ovale\Health.lua:264
rangedCrit = 17.458181381226
futureLastEnable = <table> {
}
GetGCD = <function> defined @Interface\AddOns\Ovale\Cooldown.lua:366
GetSpellHasteMultiplier = <function> defined @Interface\AddOns\Ovale\PaperDoll.lua:479
GetMeleeHasteMultiplier = <function> defined @Interface\AddOns\Ovale\PaperDoll.lua:467
GetSpellCooldown = <function> defined @Interface\AddOns\Ovale\Cooldown.lua:474
RemoveAuraOnGUID = <function> defined @Interface\AddOns\Ovale\Aura.lua:1536
chi = 0
GetPower = <function> defined @Interface\AddOns\Ovale\Power.lua:356
arcanecharges = 0
GetMasteryMultiplier = <function> defined @Interface\AddOns\Ovale\PaperDoll.lua:461
focus = 0
GetSpellCooldownDuration = <function> defined @Interface\AddOns\Ovale\Cooldown.lua:481
CheckSpellInfo = <function> defined @Interface\AddOns\Ovale\Data.lua:458
spellCrit = 17.458181381226
pain = 0
mainHandWeaponDamage = 0
nextCast = 1294250.925
combatStartTime =
It looks like "\n" in strings were accidently converted to actual newlines. For example in Profiler.lua:
>> return tconcat(array, "\n")
<< return tconcat(array, "
```")
Default Script: 7.0.10.1
Talents: Boulderfist, Wind Rush Totem, Lightning Surge Totem, Ancestral Swiftness, Tempest, Crashing Storm, Landslide
Issue 1: The default script is suggesting Stormstrike when there is not enough Maelstrom to cast it AND Boulderfist is off of cooldown but not being suggested.
Issue 2: (When) Boulderfist is being suggested, correctly, as there is nothing else to cast yet due to Maelstrom needing to be generated, however it is on cooldown without a red cool down timer overlay to show that it is still not available to cast yet.
Thank you again for all of your hard work on this add-on!
Snapshots from auras that are used when applying the ability don't always apply correctly.
Example: I use Rake from Prowl. Prowl is removed by Rake. The multiplier should increase by a factor of 2.
The problem occurs when events are not occurring in the expected order (I had exact /ovale debug
posts in the old ticket system on curseforge). The events in question:
UNIT_SPELLCAST_SENT
- Action is innitiated by player
UNIT_SPELLCAST_SUCCEEDED
- Acknowledgement that ability cast succeeded (as opposed to failed).
UNIT_AURA
- Aura is removed
Most of the time all of these occur at the same time (on my computer according to Ovale's debug timestamps). However, sometimes there's a slight delay (15-30 ms) in the UNIT_SPELLCAST_SUCCEEDED
but the UNIT_AURA
event will fire at the same time as the UNIT_SPELLCAST_SENT
.
OvaleAura has a function to check if an aura was removed within a short enough time period: function IsWithinAuraLag(time1, time2, factor)
But this will only be used if Ovale considers an aura to be "consumed." To determine if a spell is consumed, Ovale checks if the aura ended early and if it did, check the if the OvaleFuture:LastInFlightSpell()
consumed it. This is all done in function OvaleAura:LostAuraOnGUID(guid, atTime, auraId, casterGUID)
The problem is that OvaleFuture:LastInFlightSpell()
returns the last ability to send a UNIT_SPELLCAST_SUCCEEDED
event. But since that event sometimes fires after the UNIT_AURA
event does, the function checks the wrong spellcast and doesn't consider the aura "consumed."
The easy "quick fix" is to stop checking against the most recent spellcast and simply mark any aura that ended early as "consumed." https://github.com/ShmooDude/Ovale-1/pull/1 is what I did on my local copy. I did 30 tests at 700 Aura Lag setting and 10 at 100 and all got the correct snapshot.
The probably more correct method would be to check against both the most recent successful spellcast and any spellcasts sent, but not yet succeeded or failed.
They are used in Outlaw and ShadowPriest scripts. They should be translated to AddFunction calls.
Apparently, the wrecking ball buff (increases the damage of whirlwind) isn't removed till the END of the animation. This of course causes Ovale to think the buff is still active and thus often suggest using Whirlwind again when in reality it won't be up.
An example of the timing SPELL_CAST_SUCCESS
for Whirlwind fired at 31.871 and SPELL_AURA_REMOVED
FIRED AT 32.657. A difference of ~3/4 a second, probably the length of the animation.
Not entirely sure of the best way to fix it. I got a couple thoughts but maybe you can come up with something better.
Seems to be different than "duration".
Sidoine,
Thanks for updating the script it is working much better, couple of things I found that were still bugged.
Version: 7.0.14.0
Talents: Shadowy Inspiration, Improved Dreadstalkers, Demon Skin, Power Trip, Burning Rush, Grimoire of Synergy, Demonbolt
Script: [7.0] Ovale Demonology Warlock
Issue 1: Doom is not being suggested in the rotation at all.
Issue 2: When your pet dies in combat instead of suggesting to cast your pet again, it keeps suggesting to cast Demonic Empowerment until you cast your pet.
Issue 3: When you cast Summon Doomguard or Summon Infernal the next thing that should be suggested is Demonic Empowerment
Issue 4: Need to add Cast Demonwrath if there are 5+ targets stacked around your demons, or while moving if you are above 60% Mana.
Thank you for your hard work.
Cheers!
For a 20% reduction, syntax should be:
SpellInfo(cleave rage_percent=80 talent=dauntless_talent)
Current syntax:
SpellInfo(lunar_strike_balance astralpower_more40=blessing_of_elune_buff)
should be replaced by
SpellRequire(lunar_strike_balance astralpower_percent 140=buff,blessing_of_elune_buff)
Not suggesting interrupt on hunter. There isn't even a checkbox to enable it.
Silencing shot for BeastMastery and Marksmanship http://www.wowhead.com/spell=41084/silencing-shot
Muzzle for Survival http://www.wowhead.com/spell=187707/muzzle
On both provided scripts, the left icon displays the arrow indicating you're out of range, no matter how close you are. v 7.0.14.0
It should give the percent (0 to 1 float number) of actors in the simulation that does not have an execute ability. Currently, it returns 0.
For instance: DK-Blood - Death strike runicpower cost can be reduced in 2 ways:
Tried something but not quite successfull
SpellInfo(death_strike runicpower=40 itemset=T18 itemcount=4 specialization=blood) SpellRequire(death_strike runicpower -5=buff,ossuary_buff)
Spell(potion) should probably translate into calling function FrostUsePotionStrength().
Does this only happen in Frost DK script?
Should the simc action "potion,type=draenic_strength" be translated differently?
Lots of errors with getting data on Runic Power introduced with 7.0.15 changes.
203x Ovale\Power.lua:368: attempt to perform arithmetic on local 'powerRate' (a nil value)
Ovale\Power.lua:368: in function `GetPower'
Ovale\Power.lua:716: in function `TimeToPower'
Ovale\SpellBook-Spellbook.lua:514: in function `GetTimeToSpell'
Ovale\BestAction.lua:269: in function <Ovale\BestAction.lua:209>
(tail call): ?
Ovale\BestAction.lua:520: in function `?'
Ovale\BestAction.lua:480: in function `RecursiveCompute'
Ovale\BestAction.lua:459: in function `PostOrderCompute'
Ovale\BestAction.lua:420: in function `Compute'
Ovale\BestAction.lua:812: in function `?'
Ovale\BestAction.lua:480: in function `RecursiveCompute'
Ovale\BestAction.lua:459: in function `PostOrderCompute'
Ovale\BestAction.lua:420: in function `Compute'
Ovale\BestAction.lua:812: in function `?'
Ovale\BestAction.lua:480: in function `RecursiveCompute'
Ovale\BestAction.lua:459: in function `PostOrderCompute'
Ovale\BestAction.lua:420: in function `Compute'
Ovale\BestAction.lua:396: in function `GetAction'
Ovale\Frame.lua:212: in function `OnUpdate'
Ovale\Frame.lua:89: in function <Ovale\Frame.lua:88>
The Blade of Justice spell is replaced by Blade of Wrath for some talents. The spellbook for Ovale detects both the old and new spell ID (shown below), but only the new spell name. This causes issues where Ovale will display the correct spell icon for rotation, but SpellFlashCore will not highlight or flash the Blade of Wrath spell... possibly because it is being passed the spell ID for Blade of Justice (184575) that is not present on the action bar.
Spellbook detection debug output...
Blade of Wrath: 184575
Blade of Wrath: 202270
Message: Interface\AddOns\Ovale\libs\AceDBOptions-3.0\AceDBOptions-3.0.lua:357: unfinished string near '"'
Time: 08/04/16 11:37:43
Count: 1
Stack:
Locals:
HUGE number of the following increments:
Message: Interface\AddOns\Ovale\Frame.lua:172: attempt to call method 'UnitGUID' (a nil value)
Time: 08/04/16 11:38:27
Count: 1664
Stack: Interface\AddOns\Ovale\Frame.lua:172: in function `OnUpdate'
Interface\AddOns\Ovale\Frame.lua:89: in function <Interface\AddOns\Ovale\Frame.lua:88>
Locals: self =
{Need to add "DEMONHUNTER" keys to several arrays:
Message: ...ale\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:3: attempt to index global 'LibStub' (a nil value)
Time: 08/17/16 16:45:58
Count: 1
Stack: ...ale\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:3: in main chunk
Locals: MAJOR = "CallbackHandler-1.0"
MINOR = 6
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = 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 global 'LibStub' (a nil value)"
"Message: Interface\AddOns\Ovale\Frame.lua:172: attempt to call
Time: 08/11/16 19:58:19
Count: 12238
Stack: [C]: in function UnitGUID' Interface\Addons\Ovale\Frame.lua:172: in function
OnUpdate'
Interface\Addons\Ovale\Frame.lua:89: in function
<Interface\Addons\Ovale\Frame.lua:88>
Locals:"
This is the message that continues to spam.
#blackout_kick,if=(chi>1|buff.bok_proc.up)&buff.serenity.down&!prev_gcd.blackout_kick if { { Chi() > 1 or BuffPresent(bok_proc_buff) } and BuffExpires(serenity_buff) and not PreviousGCDSpell(blackout_kick) }Spell(blackout_kick)
This line LOOKS correct. However there are times in which it will request to cast Blackout Kick two times in a row
This image shows Ovale's next suggestion; Blackout Kick; however the weak aura above Ovale shows what the previous cast was; in this case Blackout Kick. I made sure I did NOT have the Monk trinket; which would have had a chance to cast an automatic Rising Sun Kick after a Blackout Kick; equipped.
extra_energy is incorrect for Ferocious Bite (warriors are the only other ones that even use it). That extra energy isn't affected by any resource reductions.
e.g.
No buffs: Ferocious Bite = 25 + 25 = 50
Berserk: Ferocious Bite = 12.5 + 25 = 37.5 (currently 25 in Ovale)
Clearcasting: Ferocious Bite = 0 + 25 = 25 (currently 25 in Ovale)
Berserk + Clearcasting: = 0 + 25 = 25 (currently 13 in Ovale)
The clearcasting portion is correct, but Berserk shouldn't affect the extra energy.
This seems to be different than say Arms execute which is affected by Battle Cry's 100% rage cost reduction. That and ignore pain seem to be the only ones using a extra_ right now.
Could probably be changed to use the extra_resource modifier from #63 but not really that familiar with how to modify the simcraft translator (other than simple things like adding .cost
)
Recently added this to my simcraft action list I've been working on and Ovale doesn't know how to translate it.
It was simple enough for me to add it as a straight translation to Ovale's EnergyCost()
function but a real implementation would require it to know the power type of the class/spec that's calling it and use the class/spec's primary resource in simcraft. There's some code a little earlier in the file for the pool resource that deals with power types.
I can't be certain I didn't cause this problem by moving keys around to move more frequently pressed keys closer together. Currently, though, lunar strike, when it shows up (key 4 for me), it does not display the 4 but leaves it blank. Solar Wrath (key 3 for me) shows up labeled as key 4.
On many keys, lower right hand corner, there is a "?" that, for the life of me, I can't figure out. I'm not saying this is a bug but I have no idea why the ? shows up. Note that my Balance druid is only 96.
The previous issue I noted ( #2 ), related to the failure of SpellFlash to function when a specific Paladin spell was replaced by a spell from a talent, appears to relate to all spells that are updated and/or replaced via talents or other means (glyphs?).
In a nutshell, the original spell, not the replacement, is passed to OvaleSpellFlash. In Frame.lua, the function that changes the Ovale Action Bar icon, UpdateActionIcon, calls OvaleBestAction:GetActionInfo, which in turn calls GetActionSpellInfo, that checks for spell replacement. UpdateActionIcon, is called before OvaleSpellFlash, but the replacement spell information is never passed on to OvaleSpellFlash, and no such check occurs in the OvaleSpellFlash function.
There are multiple avenues available to solve the issue. An effective (and messy) solution is to add the following code to (around) line 225 in BestAction.lua:
element.positionalParams[1] = spellId
This ensures that the replacement spell ID is accessible to OvaleSpellFlash when it is called. Alternatively, additional checks can also be added to OvaleSpellFlash, though it may prove preferable to conduct the replacement check even earlier, such as when the spell book is parsed or updated, and avoid the issue and CPU cycles altogether.
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.