Ovale Spell Priority

Ovale Spell Priority

6M Downloads

Will the addon continue function and be updated ?

kAz0 opened this issue · 37 comments

commented

Will the addon continue function and be updated ? I am casual in the game and the addon helps me a lot.
Would really like to know if the addon will get updated soon or in the future.Thanks for everything you do.

commented

I'll probably work on it soon, but it won't function until it is. I'm less experienced than Sidoine so may take a while.

commented

Ive been following your feral druid scripts so much whole legion :D. Well i hope everything works out fine.And I hope he can give you permission so you can release updates.Many people depend on you :P thanks for making the game better for us.

commented

When to update the BFA version @ShmooDude

commented

I made mine work on PTR

  • disabled LibArtifactData-1.0 in Artifact.ts
  • function TraitRank returns 0
  • function HasTrait returns false
  • disabled all Events in Artifact.ts
  • Power.ts changed UNIT_POWER to UNIT_POWER_UPDATE ( event was renamed in API 8.0 )
  • conditions.ts function HolyPower changed holy to holypower
  • Aura.ts in function ScanAuras dropped second parameter in UnitAura
  • Stances.ts GetShapeshiftFormInfo no longer returns name need to get name using GetSpellInfo
  • Score.ts, Future.ts, conditions.ts UnitCastingInfo and UnitChannelInfo dropped second parameter

Event changes (no longer provide spell name and rank):

  • UNIT_SPELLCAST_SUCCEEDED
  • UNIT_SPELLCAST_FAILED_QUIET
  • UNIT_SPELLCAST_INTERRUPTED
  • UNIT_SPELLCAST_START
  • UNIT_SPELLCAST_FAILED
  • UNIT_SPELLCAST_STOP
  • UNIT_SPELLCAST_DELAYED
  • UNIT_SPELLCAST_CHANNEL_START
  • UNIT_SPELLCAST_CHANNEL_UPDATE
  • UNIT_SPELLCAST_CHANNEL_STOP

Still get some warnings due to old rotations using removed talents but addon works

commented

How long can we use it on PTR, or test it

commented

@inforcer007 I never used GitHub before but I've forked this project and made modification so you can check that in my repo ( BfA branch ) copy dist and libs to your addon folder ( but like I said talents and spell ids still needs to be fixed )

commented

@mwojtkowski

any chance you could upload those modified files ? totally don't understand that wall of text...

commented

@mwojtkowski

Thanks for that, ill try and figure that part out :)

commented

@mwojtkowski target.Distance() This function can't be judged or the distance is wrong (BFA)

commented

I've checked it on DH on beta and target.Distace() works fine no errors

30y range checked with Throw Glaive

Include(ovale_common)
Include(ovale_demonhunter_spells)
AddIcon enemies=1 help=main specialization=vengeance
{
if target.Distance() >= 30 Spell(infernal_strike)
}

commented

@mwojtkowski
I've checked it on paladin retribution

AddIcon enemies=1 help=main specialization=retribution
{
if target.Distance()<12 spell(wake_of_ashes)
}

the wake_of_ashes an't be judged or the distance is wrong

I think the distance is 2 times the actual distance

when I use if target.Distance()<15 the Distance() is same as 30

commented

@fwater

Ok I think I know what you mean, unfortunately since target.Distance() is using LibRangeCheck-2.0 it can check only 5, 6, 8, 10, 15, 20, 25, 30, 35 38, 40, 45, 50, 55, 60, 70, 80, 90, 100 yards and WoA is 12y you need to check for 10y or use InRange(blade_of_justice) since that spell has 12y range same as WoA.

commented

@mwojtkowski InRange(blade_of_justice) is ok
buf 7.35 if target.Distance()<12 spell(wake_of_ashes) works well.
I think LibRangeCheck-2.0 need to be fixed in bfa.
I am writing the cycle of talents, and I may find more BUG.

commented

@mwojtkowski
if not BuffPresent(fingers_of_frost_buff) and PreviousGCDSpell(flurry) Spell(ice_lance)

PreviousGCDSpell(flurry) this function can't can not work (bfa)

commented

@fwater fixed UNIT_SPELLCAST_SENT and UNIT_SPELLCAST_DELAYED so PreviousGCDSpell(flurry) should work now

commented

Thanks for your work. PreviousGCDSpell() work now!
today I play the Fury. spell(rampage)
the talent I chose [Carnage] or [Frothing Berserker]
the ovale spell(rampage) Always show up rampage when the rage is 85. not the rage is 75 or 95
maybe something other bugs cause.

commented

Should finally be able to work on this soon (had some carpel tunnel so haven't been working on it lately). Good job getting it started mwojtkowski.

I'm planning on cutting it down / cleaning up unnecessary code as much as possible, especially as it regards to auras (ferals probably know what I'm talking about but no one else). Helps performance a lot for the more complicated scripts.

commented

thanks for letting us know what's going on @ShmooDude, atm I'm working on updating spells / talents for each class and adding them to SimC import

commented

DK can't work need to be fixed (bfa)

commented

@fwater yes error on DK was caused by RUNE_TYPE_UPDATE which was removed from API.
Updated warrior spells and talents ( default rotation script is broken, I'm waiting for SimC profile to update it )

commented

@mwojtkowski
PreviousGCDSpell can't work for monk
if not PreviousGCDSpell(tiger_palm) and chi() <4 spell(tiger_palm)
if not PreviousGCDSpell(blackout_kick) Spell(blackout_kick)
For example, the Warlock
1: if PreviousGCDSpell(hand_of_guldan) and not spell(hand_of_guldan) and not PreviousGCDSpell(implosion) spell(implosion)
2: if PreviousGCDSpell(hand_of_guldan) and not spell(hand_of_guldan) spell(implosion)

1 or 2 go wrong
(implosion) will spell 2 times

commented

I've checked on Live and PreviousGCDSpell is also broken on Live

after some testing this.next.PushGCDSpellId(spellId) fires so randomly for instant spells that maybe once in 10 spells will trigger it (but works for spells with cast times like Shadow/Frost Bolt ).

After some more testing moved this.next.PushGCDSpellId(spellId) to UpdateLastSpellcast from ApplySpell it fixes problem PreviousGCDSpell

While in ApplySpell it would fire on every Icon update but with UpdateLastSpellcast it will fire only on UNIT_SPELLCAST events

commented

@ShmooDude I saw that Ovale scans your target and all visible nameplates for auras would restricting it to current target and only player own spells help ?

commented

@mwojtkowski I found that simply restricting it to player spells (except on yourself) was probably enough.

Could you upload your working directory somewhere? I think I have my typescript messed up and get a ton of errors when I simply use your code from github.

commented

@ShmooDude if you're talking about errors from 'npm run prepare' than yes there will be errors because @wowts/wow-mock is not updated for 8.0. It will still 'compile' it without problems.

To remove errors you need to add add:

@wowts/wow-mock/index.d.ts

export declare function CombatLogGetCurrentEventInfo(): any[];
export declare function GetMacroSpell(slot: number): number;

and then use

import { CombatLogGetCurrentEventInfo } from "@wowts/wow-mock";

other errors are from unused variables in @wowts/ace_* libs ( can be ignored by setting "noUnusedLocals": false in tsconfig.lua.json )

Ovale.zip
it has modified functions in @wowts/wow-mock/index.d.ts

commented

@mwojtkowski I'm getting errors in all the for loops:

    for (const [debuffType] of pairs(DEBUFF_TYPE)) {
        let siDebuffType = strlower(debuffType);
        SPELLINFO_DEBUFF_TYPE[siDebuffType] = debuffType;
    }

is generating (for debuffType):
[ts] Argument of type 'string | number' is not assignable to parameter of type 'string'. Type 'number' is not assignable to type 'string'

Any ideas why? I can still code with it like that but makes it much harder to look for real errors.

commented

@ShmooDude It is caused by LuaObj interface if you want to get rid of 'string | number' errors change:

export declare function pairs<T>(a: LuaObj<T>): [keyof typeof a, T][];
export declare function pairs<T>(a: T): [keyof typeof a, any][];

to

export declare function pairs<T>(a: LuaObj<T>): [string, T][];
export declare function pairs<T>(a: T): [string, any][];

in Ovale\node_modules@wowts\lua\index.d.ts

or you can add <string> before variable

    for (const [debuffType] of pairs(DEBUFF_TYPE)) {
        let siDebuffType = strlower(<string>debuffType);
        SPELLINFO_DEBUFF_TYPE[siDebuffType] = <string>debuffType;
    }
commented

@mwojtkowski
When you are on a PVP server
Entering the arena
He will report an error and continue to report an error and cannot close
it is currently unable to enter the arena

Message: ...ngeCheck-2.0\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:1343: Attempt to register unknown event "GLYPH_ADDED"
Time: Fri Jul 13 23:53:14 2018
Count: 1
Stack: ...ngeCheck-2.0\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:1343: Attempt to register unknown event "GLYPH_ADDED"
[C]: in function RegisterEvent' ...ngeCheck-2.0\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:1343: in function activate'
...ngeCheck-2.0\LibRangeCheck-2.0\LibRangeCheck-2.0.lua:1389: in main chunk

Locals: (*temporary) = {
0 =
}
(*temporary) = "GLYPH_ADDED"

Message: Frame MYSLOT_ReportFrame_EditBox: Unknown script element OnClick
Time: Fri Jul 13 23:53:14 2018
Count: 4

Message: (null)
Time: Fri Jul 13 23:53:14 2018
Count: 4

Message: Interface\AddOns\Ovale\dist\Power.lua:393: attempt to index local 'powerInfo' (a nil value)
Time: Sat Jul 14 00:14:44 2018
Count: 680
Stack: Interface\AddOns\Ovale\dist\Power.lua:393: attempt to index local 'powerInfo' (a nil value)
Interface\AddOns\Ovale\dist\Power.lua:393: in function UpdatePower' Interface\AddOns\Ovale\dist\Power.lua:356: in function ?'
...kada\lib\CallbackHandler-1.0\CallbackHandler-1.0.lua:145: in function <...kada\lib\CallbackHandler-1.0\CallbackHandler-1.0.lua:145>
[string "safecall Dispatcher[3]"]:4: in function <[string "safecall Dispatcher[3]"]:4>
[C]: ?
[string "safecall Dispatcher[3]"]:13: in function ?' ...kada\lib\CallbackHandler-1.0\CallbackHandler-1.0.lua:90: in function Fire'
...face\AddOns\Ovale\libs\AceEvent-3.0\AceEvent-3.0.lua:120: in function <...face\AddOns\Ovale\libs\AceEvent-3.0\AceEvent-3.0.lua:119>

Locals:

commented

Looking at your previous error it was caused by old LibRangeCheck library that was included in Skada so I assume you didn't update libraries that Ovale use ( I don't upload them to my repo )

Try this ( copy this to Ovale folder )
libs.zip

commented

@mwojtkowski
20180720191521
I have replaced the Libs. But when I enter the arena, or after coming out. The skill cycle is wrong. ComboPoints () ==5 still spell (mutilate). Not spell (rupture) and (envenom). And also other class encountered similar problems. must /reload Can be recovered

today I have replaced your Aura and spellbook.
but still wrong

20180721123355
20180721124504

I think when you enter the arena, or after coming out. it can‘t judge ComboPoints() and holy_power or somethingelse. you must /reload

commented

@mwojtkowski
I've used your latest version. The arena is not wrong, but entering the arena or coming out will result in the invalidation of the code, and /reload must be restored.

commented

@Jevnaker scripts
Do not delete some of the magic ID in the previous version

commented

magic id what is that?

commented

the addon itself works perfectly after i downloaded that ovale.zip and lib thing but ovale keeps complaining about some talents missing or something like sidewinder talent on my hunter.

commented

spell id

commented

ok is that an folder or what? like in what folder can i find the spell id stuff and what file type is it?

commented

i have tried different stuff but i still keep getting ovalecompile (unknown spell with id xxxx used in spelll xxxx) and i am not sure how to fix it.