wowsims / wotlk Goto Github PK
View Code? Open in Web Editor NEWWorld of Warcraft Wrath of the Lich King Classic simulations.
Home Page: https://wowsims.github.io/wotlk/
License: MIT License
World of Warcraft Wrath of the Lich King Classic simulations.
Home Page: https://wowsims.github.io/wotlk/
License: MIT License
Is your feature request related to a problem? Please describe.
I checked the timeline of survival to see what he is doing and realised that the prio is kinda weird, so i checked your code and found out that the Prio is wrong for Survival.
Describe the solution you'd like
The prio should be Kill Shot>Explosive Shot>Explosive Trap/Black arrow > Aimed shot > Serpent Sting > Steady Shot.
Additional context
Also i am still not sure how your steady is 1.58 casttime, if the spell has only 1.5 casttime ? or is there something wrong? did i miss something?
Here u can see it yourself: https://gyazo.com/c3feab2b94a188026664f20e864fcc91
Describe the bug
https://www.wowhead.com/wotlk/item=39146/collar-of-dissolution
Item is missing from neck.
All of the numbers in https://github.com/wowsims/tbc/blob/master/sim/core/constants.go are different in wrath.
Implement special effects for all equippable items.
Which consumes do we need to include in the sim? Which TBC consumes stay?
Links to WOTLK Wowhead for each item:
Phase 5 items:
Charred Twilight Scale HC: https://www.wowhead.com/wotlk/item=54588/charred-twilight-scale
Charred Twilight Scale NM: https://www.wowhead.com/wotlk/item=54572/charred-twilight-scale
Bracers of the Fiery Night HC: https://www.wowhead.com/wotlk/item=54582/bracers-of-fiery-night
Bracers of the Fiery Night NM: https://www.wowhead.com/wotlk/item=53486/bracers-of-fiery-night
Cloak of Burning Dusk HC: https://www.wowhead.com/wotlk/item=54583/cloak-of-burning-dusk
Cloak of Burning Dusk NM: https://www.wowhead.com/wotlk/item=53489/cloak-of-burning-dusk
Phase 5 healer items:
Ring of Phased Regeneration HC: https://www.wowhead.com/wotlk/item=54585/ring-of-phased-regeneration
Ring of Phased Regeneration NM: https://www.wowhead.com/wotlk/item=53490/ring-of-phased-regeneration
Glowing Twilight Scale HC: https://www.wowhead.com/wotlk/item=54589/glowing-twilight-scale
Glowing Twilight Scale NM: https://www.wowhead.com/wotlk/item=54573/glowing-twilight-scale
Need to implement all the new enchants.
Need to add all the new profession bonuses, as well as 2 profession selectors in the UI.
We can have warnings when profession bonuses are used but the relevant profession is not selected.
List of all enchants: https://github.com/wowsims/wotlk/blob/master/sim/core/items/all_enchants.go
Note that ID is the formula item ID most of the time, but if IsSpellID: true
is set then its the enchant spell ID instead.
Describe the bug
Adding any precise gem is not increasing expertise value on the char sheet.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Should be increasing expertise
Desktop (please complete the following information):
Aura Rune of Razorice already registered!
Stack Trace:
goroutine 7 [running]:
runtime/debug.Stack()
/opt/hostedtoolcache/go/1.18.3/x64/src/runtime/debug/stack.go:24 +0x6
main.computeStats.func1()
/home/runner/work/wotlk/wotlk/sim/wasm/main.go:45 +0x10
panic({0x8ba40, 0x8262270})
/opt/hostedtoolcache/go/1.18.3/x64/src/runtime/panic.go:838 +0x29
github.com/wowsims/wotlk/sim/core.(*auraTracker).registerAura(0x825a400, 0x825a000, {{0x17a100, 0x10}, {0x0, 0x0}, {0xd05f, 0x0, 0x0, 0x0}, ...})
/home/runner/work/wotlk/wotlk/sim/core/aura.go:276 +0x3d
github.com/wowsims/wotlk/sim/core.(*Unit).RegisterAura(...)
/home/runner/work/wotlk/wotlk/sim/core/aura.go:301
github.com/wowsims/wotlk/sim/common/wotlk.init.2.func15({0x27aee0, 0x825a000})
/home/runner/work/wotlk/wotlk/sim/common/wotlk/enchant_effects.go:396 +0x27
github.com/wowsims/wotlk/sim/core.(*Character).applyItemEffects(0x825a000, {0x27aee0, 0x825a000})
/home/runner/work/wotlk/wotlk/sim/core/character.go:199 +0x12
github.com/wowsims/wotlk/sim/core.(*Character).applyAllEffects(0x825a000, {0x27aee0, 0x825a000}, {{{}, {}, {}, 0x0}, 0x0, {0x0, 0x0, ...}, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/character.go:163 +0x24
github.com/wowsims/wotlk/sim/core.(*Raid).applyCharacterEffects(0x2119e60, {{{}, {}, {}, 0x0}, 0x0, {0x0, 0x0, 0x0}, {0x822a100, ...}, ...})
/home/runner/work/wotlk/wotlk/sim/core/raid.go:220 +0x48
github.com/wowsims/wotlk/sim/core.(*Environment).initialize(0x823b5f0, {{{}, {}, {}, 0x0}, 0x0, {0x0, 0x0, 0x0}, {0x822a100, ...}, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/environment.go:101 +0x14
github.com/wowsims/wotlk/sim/core.NewEnvironment({{{}, {}, {}, 0x0}, 0x0, {0x0, 0x0, 0x0}, {0x822a100, 0x5, ...}, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/environment.go:40 +0x4
github.com/wowsims/wotlk/sim/core.ComputeStats(...)
/home/runner/work/wotlk/wotlk/sim/core/api.go:38
main.computeStats({{}, 0x0, 0x0}, {0x200e020, 0x1, 0x1})
/home/runner/work/wotlk/wotlk/sim/wasm/main.go:64 +0x13
syscall/js.handleEvent()
/opt/hostedtoolcache/go/1.18.3/x64/src/syscall/js/func.go:94 +0x26
Request:
eJztkr9rFEEcxfe97+5mM3jHeIgMqY4r5AgIc7sspNMif4CdtYVgYSFW0SrYqBHMgYWnATm7gxA4EMIlJnBi4Vmd4MVgEBXBY0MSuDIIUWfzA6zF0u/Am3l83vdVo36GaiFUD8M7CC9dv3Lr6s1oTKuJV1BaDzdp+p9ZCZdf80OHalzvf2JFnr2lKui9NZo3DsqaI5F+/5Jma0nyLQf6Lhe6XB4t6jnHeh+l4ruo53zmEptLJ35cH6we12i969Bw0S07u31YPL9Ok7liX2+/oNMHK7nurue6088TBys0X5ryx8vX866y2CZ7LLTIGX8W/mSP3v/5J3Pbj2D4A5eVV5qOqKUcXAwyyAi8x6BOaTBoUdoMOmSXfEf5SmTkiFIXaYg0BW1BR6QrQU8wUTh91Dy6YFDFHM7FiU2tten5JHaapDZJ49gmtuaAtUlSs7UkrX2DiRYG1I8HNHvfWW4MWG1s0D7ZYAZ/hLGniFWo/Oj5XR7ew0X3RVUxun+2/OtkkBP9aPUosb/DLXjq+JQ8dUr9lSudqXIKNziDJtACukAGTGqDMiymcA2zQB34DbIgjRE=
Describe the bug
https://www.wowhead.com/wotlk/spell=60692/enchant-chest-powerful-stats
https://www.wowhead.com/item=44489/formula-enchant-chest-powerful-stats - added 3.0.2 so available on launch.
Is your feature request related to a problem? Please describe.
Basically people told me that its hard to see which talent is below this big black background and numbers.
Describe the solution you'd like
I guess just make it smaller
Describe the bug
If u put points into Survivalist u get 2 % stamina per point while the max is 10%. You can see in the stat showcase on the left side that your Health increases indeed but not your stamina. The talent increases your stamina not your health. Because of that Hunter vs Wild doesnt count the bonus stamina from Survivalist.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
How it should work is that you get 10% more Stamina from Survivalist and Hunter vs Wild gives you 10% Rap and also you and your pet 10% Ap per point, based on the Stamina u have.
Sim Links and Screenshots
0 Points in Survivalist : https://gyazo.com/6572a6f77f80cbc4014dfc89de369f63
5 Points in Survivalist : https://gyazo.com/5254b778959874eef5b12addb44cfb3d
0 Points in Hunter vs Wild : https://gyazo.com/c998f5876b52ba9f585328b4b165a910
1 Point in Hunter vs Wild : https://gyazo.com/d4198a0d1f89d6d17014bec5701831a4
Desktop:
Implement new metagem effects.
runtime error: invalid memory address or nil pointer dereference
Stack Trace:
goroutine 11 [running]:
runtime/debug.Stack()
/opt/hostedtoolcache/go/1.18.3/x64/src/runtime/debug/stack.go:24 +0x6
github.com/wowsims/wotlk/sim/core.runSim.func1()
/home/runner/work/wotlk/wotlk/sim/core/sim.go:53 +0x10
panic({0x97260, 0xae1750})
/opt/hostedtoolcache/go/1.18.3/x64/src/runtime/panic.go:838 +0x29
github.com/wowsims/wotlk/sim/core.(*Aura).IsActive(...)
/home/runner/work/wotlk/wotlk/sim/core/aura.go:129
github.com/wowsims/wotlk/sim/priest.(*Priest).registerSmiteSpell.func1(0x1c9f7a0, 0x797f2b0, 0x796bf40, 0x79e6c60)
/home/runner/work/wotlk/wotlk/sim/priest/smite.go:44 +0x5
github.com/wowsims/wotlk/sim/core.(*SpellEffect).calcDamageSingle(0x796bf40, 0x1c9f7a0, 0x797f2b0, 0x79e6c60)
/home/runner/work/wotlk/wotlk/sim/core/spell_effect.go:183 +0xd
github.com/wowsims/wotlk/sim/core.ApplyEffectFuncDirectDamage.func2(0x1c9f7a0, 0x1c9b600, 0x797f2b0)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:243 +0x25
github.com/wowsims/wotlk/sim/core.(*Spell).applyEffects(0x797f2b0, 0x1c9f7a0, 0x1c9b600)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:209 +0x1a
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func1(0x1c9f7a0, 0x1c9b600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:253 +0x12
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func2(0x1c9f7a0, 0x1c9b600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:267 +0xd
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func4(0x1c9f7a0, 0x1c9b600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:297 +0x2a
github.com/wowsims/wotlk/sim/core.(*Hardcast).OnExpire(...)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:24
github.com/wowsims/wotlk/sim/core.(*Unit).advance(0x7980000, 0x1c9f7a0, 0x61c6cd4a)
/home/runner/work/wotlk/wotlk/sim/core/unit.go:382 +0x10
github.com/wowsims/wotlk/sim/core.(*Character).advance(0x7980000, 0x1c9f7a0, 0x61c6cd4a)
/home/runner/work/wotlk/wotlk/sim/core/character.go:362 +0x4
github.com/wowsims/wotlk/sim/core.(*Simulation).advance(0x1c9f7a0, 0x61c6cd4a)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:330 +0x2f
github.com/wowsims/wotlk/sim/core.(*Simulation).runOnce(0x1c9f7a0)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:279 +0x10
github.com/wowsims/wotlk/sim/core.(*Simulation).run(0x1c9f7a0)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:220 +0x19
github.com/wowsims/wotlk/sim/core.runSim({{{}, {}, {}, 0x1c810a8}, 0x0, {0x0, 0x0, 0x0}, 0x1c61490, 0x78c7aa0, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:99 +0x25
github.com/wowsims/wotlk/sim/core.RunSim({{{}, {}, {}, 0x1c810a8}, 0x0, {0x0, 0x0, 0x0}, 0x1c61490, 0x78c7aa0, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:39 +0x2
created by github.com/wowsims/wotlk/sim/core.RunRaidSimAsync
/home/runner/work/wotlk/wotlk/sim/core/api.go:74 +0xa
Request:
eJztUr0vQ1EUf+f0tX299XE9Ek+nehZpIrmvzRtMnlEs/oQamAwiBkxVUaWtNDGI+og0JI0YahPBgEitIiSC+BrEootJiNOPMDJ0MDjn5pdzfuee3znDYa92lrGzpD0Mjp6B3tG+IQW43XMDjPO1OGpTj6A7NmMYfQEm86UYEp+OoXZ+R/z1G2zNI6vmB8R8hFG3ZSmt57vUeDyNuovS0mM1PJxALZIFXaYuidXxDH3KX4HuJIkixfhtAnWZUok0JknydA90F9W+5kzMonY3R3Mu3oApfIckotlCdJIsRTJ/jyPhenGPCGks0kgXdZcek6i48gy6O4vOEMo5rBlx+nIo/VtFbMyhgAUc08AYKqBKHsIZaDGF4Q8IYQSEKUzDT2i0CWGapiGEn1yY/nuQnkDOgzMF0iWdQ9lVtwKrgK0QhEFgVey7IP0+U2ktL7aiT6HrBg28oI7bXMWNQ/1Wc2n3BqsptVCwkw71Ab1dGv7Zwxi2KiJj2/9Bp7syc8jaixg9tDrLhBUEj1vZbuQby0dntQI+AXbAcxA=
Several classes have mechanics that 'Refresh' the duration of a dot.
This keeps the snapshotted crit / personal % dmg increases, but recalculates the sp/haste on each refresh.
Also need a feature to "Reapply" a dot that will recalculate all snapshotted values. For now this can be accomplished with a disable and apply fresh.
Is your feature request related to a problem? Please describe.
Have an option simply to set the max level to 70 instead of 80 to allow prepatch simulations
Describe the solution you'd like
Basically just a spot in settings that would allow us to change the max level between 70 and 80. This would also require us to update talents & run only 2 greater glyphs.
Additional context
This is simply to enable the ability to do prepatch sims.
In WOTLK there are several cases where channeled spells would want to be broken early (usually to take advantage of a random proc). We should provide a framework way of doing this instead of making people work around it.
Buff stacking is different (only 1 buff / category) and the buffs themselves are different of course.
Need to add all the glyphs. In the UI, this will probably go in the Talents tab.
On the proto, we can add a field to Player for each major glyph and each minor glyph, i.e. 6 new fields. They could all have type int32 and hold the item ID for the selected glpyh. Then each class can define a proto enum with all the glyph IDs.
Describe the bug
Nightmare Tear is missing from the gem selection. https://www.wowhead.com/wotlk/item=49110/nightmare-tear
To Reproduce
Steps to reproduce the behavior:
Expected behavior
This gem should exist, its the best gem for melee dps.
Describe the bug
Adding Surplus Limb adds Surplus spell power
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Sim Links and Screenshots
If applicable, add links to your sim settings or screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
Additional context
Add any other context about the problem here.
Describe the bug
Basically you can not see in the detailed results how much ticks something had. It seems like it doesnt count the damage per tick but rather the damage per cast.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
It should count the ticks properly and show the real damage per avg cast for each dot spell.
Sim Links and Screenshots
https://gyazo.com/c4c5e75ae7f4478dc964c5077d64e329
As u can see its almost like copy paste, it doesnt work properly.
Desktop (please complete the following information):
Windows 11
Chrome
Expected to not be played in wrath (even less than in TBC).
Aura with 0 duration
Stack Trace:
goroutine 9 [running]:
runtime/debug.Stack()
/opt/hostedtoolcache/go/1.18.4/x64/src/runtime/debug/stack.go:24 +0x6
github.com/wowsims/wotlk/sim/core.runSim.func1()
/home/runner/work/wotlk/wotlk/sim/core/sim.go:54 +0x10
panic({0x99ca0, 0x2a8ad8})
/opt/hostedtoolcache/go/1.18.4/x64/src/runtime/panic.go:838 +0x29
github.com/wowsims/wotlk/sim/core.(*Aura).Activate(0xb7d8480, 0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/aura.go:455 +0xe8
github.com/wowsims/wotlk/sim/rogue.(*Rogue).registerDeadlyPoisonSpell.func2(0xb7a1560, 0x24a7880)
/home/runner/work/wotlk/wotlk/sim/rogue/poisons.go:72 +0xc
github.com/wowsims/wotlk/sim/core.NewDot.func1(0xb7a1560, 0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/dot.go:147 +0x1f
github.com/wowsims/wotlk/sim/core.(*Aura).Activate(0xb7a1560, 0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/aura.go:518 +0xd6
github.com/wowsims/wotlk/sim/core.(*Dot).Apply(0xb773ab0, 0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/dot.go:70 +0x23
github.com/wowsims/wotlk/sim/rogue.(*Rogue).registerDeadlyPoisonSpell.func1(0x24a7880, 0xb7a1440, 0xb7f5550)
/home/runner/work/wotlk/wotlk/sim/rogue/poisons.go:52 +0x6a
github.com/wowsims/wotlk/sim/core.(*SpellEffect).finalize(0xb7f5550, 0x24a7880, 0xb7a1440)
/home/runner/work/wotlk/wotlk/sim/core/spell_effect.go:250 +0xa8
github.com/wowsims/wotlk/sim/core.ApplyEffectFuncDirectDamage.func1(0x24a7880, 0xb790600, 0xb7a1440)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:312 +0x1e
github.com/wowsims/wotlk/sim/core.(*Spell).applyEffects(0xb7a1440, 0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:288 +0x1b
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func1(0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:263 +0x12
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func3(0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:294 +0x49
github.com/wowsims/wotlk/sim/core.(*Spell).wrapCastFuncResources.func1(0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:118 +0x4
github.com/wowsims/wotlk/sim/core.(*Spell).Cast(...)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:267
github.com/wowsims/wotlk/sim/rogue.(*Rogue).applyDeadlyPoison.func2(0xb7d5d40, 0x24a7880, 0xb7d8240, 0xb7d6a50)
/home/runner/work/wotlk/wotlk/sim/rogue/poisons.go:130 +0x1b
github.com/wowsims/wotlk/sim/core.(*auraTracker).OnSpellHitDealt(...)
/home/runner/work/wotlk/wotlk/sim/core/aura.go:669
github.com/wowsims/wotlk/sim/core.(*SpellEffect).finalize(0xb7d6a50, 0x24a7880, 0xb7d8240)
/home/runner/work/wotlk/wotlk/sim/core/spell_effect.go:252 +0xf2
github.com/wowsims/wotlk/sim/core.ApplyEffectFuncDirectDamage.func2(0x24a7880, 0xb790600, 0xb7d8240)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:323 +0x26
github.com/wowsims/wotlk/sim/core.(*Spell).applyEffects(0xb7d8240, 0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:288 +0x1b
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func1(0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:263 +0x12
github.com/wowsims/wotlk/sim/core.(*Spell).makeCastFuncWait.func3(0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:294 +0x49
github.com/wowsims/wotlk/sim/core.(*Spell).wrapCastFuncResources.func1(0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/cast.go:118 +0x4
github.com/wowsims/wotlk/sim/core.(*Spell).Cast(...)
/home/runner/work/wotlk/wotlk/sim/core/spell.go:267
github.com/wowsims/wotlk/sim/core.(*AutoAttacks).TrySwingOH(0xb7cadd8, 0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/attack.go:496 +0x2b
github.com/wowsims/wotlk/sim/core.(*AutoAttacks).SwingMelee(0xb7cadd8, 0x24a7880, 0xb790600)
/home/runner/work/wotlk/wotlk/sim/core/attack.go:444 +0x3
github.com/wowsims/wotlk/sim/core.(*AutoAttacks).resetAutoSwing.func1(0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/attack.go:352 +0x6
github.com/wowsims/wotlk/sim/core.(*Simulation).runOnce(0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:292 +0x14
github.com/wowsims/wotlk/sim/core.(*Simulation).run(0x24a7880)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:230 +0x19
github.com/wowsims/wotlk/sim/core.runSim({{{}, {}, {}, 0x0}, 0x0, {0x0, 0x0, 0x0}, 0xb7738f0, 0xb773a40, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:108 +0x35
github.com/wowsims/wotlk/sim/core.(*Simulation).runPresims(0x24a77a0, {{{}, {}, {}, 0x24810a8}, 0x0, {0x0, 0x0, 0x0}, 0xb773340, ...})
/home/runner/work/wotlk/wotlk/sim/core/presim.go:93 +0x2f
github.com/wowsims/wotlk/sim/core.runSim({{{}, {}, {}, 0x24810a8}, 0x0, {0x0, 0x0, 0x0}, 0xb773340, 0xb773490, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:79 +0xb
github.com/wowsims/wotlk/sim/core.RunSim({{{}, {}, {}, 0x24810a8}, 0x0, {0x0, 0x0, 0x0}, 0xb773340, 0xb773490, ...}, ...)
/home/runner/work/wotlk/wotlk/sim/core/sim.go:40 +0x2
created by github.com/wowsims/wotlk/sim/core.RunRaidSimAsync
/home/runner/work/wotlk/wotlk/sim/core/api.go:74 +0xa
RNG Seed: 99362016
Describe the bug
Basically if i change one of my glyphs to killshot it doesnt effect the amount of killshot casted at all. This means that either glyphe is not working or the APL is super scuffed for survival.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The amount of kill shots casted should go up and effect the dps.
Sim Links and Screenshots
Bad to see but this is with Kill shot glyphe : https://gyazo.com/00eb9d882b54614b5774086274d74851
This is without : https://gyazo.com/4698c6b16383384dced914fac926de59
Desktop (please complete the following information):
Windows 11
Chrome
Question:
Is it possible to see the APL somewhere for survival?
Describe the bug
When you hover your mouse over an item it should show a tooltip, however if you hover your mouse nowhere near a item it still shows a tooltip.
To Reproduce
Steps to reproduce the behavior:
Go to website https://wowsims.github.io/wotlk/shadow_priest/
Hover mouse in the middle of the screen
Mouse should have item tooltip show up
Expected behavior
Mouse should only open a tooltip when hovered over an item and not when anywhere else on the screen
Desktop (please complete the following information):
Windows
Chrome
Several effects give bonus % to a stat and needs to stay updated with current stats.
We should probably just redesign stat dependencies to just always be dynamic instead.
All stat dependencies seem to be a fraction/percent bonus based (based on date of this ticket I have checked all AddStatDep call to verify this) on an input stat applied to output stat. What if we exposed just an input, output, and fractional value to multiply by for all stat dependencies. Allow them to be added/removed dynamically (since we know the formula to apply and un-apply them).
Evaluate performance of this.
We could theoretically separate 'bonus' from 'dep' in that str->str doesn't actually require any dependency checks but str->ap does.
var bonuses = [Len]StatBonuses{}
type StatBonuses struct {
Bonus float64 // multiplier added to all stat gains from this stat.
Deps map[Stat]float64 // ratio added to Stat when this stat is changed.
}
Then any time you find a dep for the given stat, you just multiply new / old
ratio, then descend to that stat's StatBonuses to check for more deps.
The dps-meter is always going up when launching a sim
If things were perfectly randomized, we could see it sometimes go up, go down, be stable...
This is a hint that there are probably some initialization issues in the sim.
Several stats are fundamentally changed from TBC --> Wrath.
The assets folder is getting pretty crowded. I propose we move all images; png/svg/jpg to assets/img/
and all fonts to assets/fonts/
. I will make a PR for this.
The following files will need updates to their references. (output of grep -e 'assets\/.*\.png' -e 'assets\/.*\.svg' -e 'assets\/.*\.jpg' -e 'assets\/.*\.woff2' . -R | grep -v node_modules | grep -v tags | grep -v dist
). A total of 62
replacements needs to be made.
./ui/elemental_shaman/_sim.scss: --theme-background-image: url('/wotlk/assets/elemental_shaman_background.jpg');
./ui/feral_druid/_sim.scss: --theme-background-image: url('/wotlk/assets/feral_druid_background.jpg');
./ui/retribution_paladin/_sim.scss: --theme-background-image: url('/wotlk/assets/retribution_paladin.jpg');
./ui/protection_warrior/_sim.scss: --theme-background-image: url('/wotlk/assets/protection_warrior_background.jpg');
./ui/hunter/_sim.scss: --theme-background-image: url('/wotlk/assets/hunter_background.jpg');
./ui/smite_priest/_sim.scss: --theme-background-image: url('/wotlk/assets/smite_priest_background.jpg');
./ui/index.html: src: url(/wotlk/assets/PlusJakartaSans-Regular.woff2);
./ui/index.html: src: url(/wotlk/assets/PlusJakartaSans-Bold.woff2);
./ui/index.html: background-image: url("assets/wotlk.jpg");
./ui/index.html: <img src="/wotlk/assets/WoW-Simulator-Icon.png" style="height: 75px;">
./ui/index.html: <img src="/wotlk/assets/raid_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/balance_druid_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/feral_druid_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/feral_druid_tank_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/hunter_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/mage_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/retribution_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/protection_paladin_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/shadow_priest_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/smite_priest_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/rogue_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/elemental_shaman_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/enhancement_shaman_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/warlock_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/warrior_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/protection_warrior_icon.png" class="sim-title-icon">
./ui/index.html: <img src="/wotlk/assets/death_knight_icon.jpg" class="sim-title-icon">
./ui/warlock/_sim.scss: --theme-background-image: url('/wotlk/assets/warlock_background.jpg');
./ui/enhancement_shaman/_sim.scss: --theme-background-image: url('/wotlk/assets/enhancement_shaman_background.jpg');
./ui/core/proto_utils/action_id.ts: [ResourceType.ResourceTypeBloodRune]: '/wotlk/assets/blood_rune.png',
./ui/core/proto_utils/action_id.ts: [ResourceType.ResourceTypeFrostRune]: '/wotlk/assets/frost_rune.png',
./ui/core/proto_utils/action_id.ts: [ResourceType.ResourceTypeUnholyRune]: '/wotlk/assets/unholy_rune.png',
./ui/core/proto_utils/action_id.ts: [ResourceType.ResourceTypeDeathRune]: '/wotlk/assets/death_rune.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecBalanceDruid]: '/wotlk/assets/balance_druid_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecElementalShaman]: '/wotlk/assets/elemental_shaman_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecEnhancementShaman]: '/wotlk/assets/enhancement_shaman_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecFeralDruid]: '/wotlk/assets/feral_druid_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecFeralTankDruid]: '/wotlk/assets/feral_druid_tank_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecHunter]: '/wotlk/assets/hunter_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecMage]: '/wotlk/assets/mage_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecRogue]: '/wotlk/assets/rogue_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecRetributionPaladin]: '/wotlk/assets/retribution_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecProtectionPaladin]: '/wotlk/assets/protection_paladin_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecShadowPriest]: '/wotlk/assets/shadow_priest_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecWarlock]: '/wotlk/assets/warlock_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecWarrior]: '/wotlk/assets/warrior_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecProtectionWarrior]: '/wotlk/assets/protection_warrior_icon.png',
./ui/core/proto_utils/utils.ts: [Spec.SpecSmitePriest]: '/wotlk/assets/smite_priest_icon.png',
./ui/core/proto_utils/utils.ts:export const raidSimIcon: string = '/wotlk/assets/raid_icon.png';
./ui/core/_sim_ui.scss: mask: url(/wotlk/assets/gauge.svg);
./ui/core/_sim_ui.scss: -webkit-mask: url(/wotlk/assets/gauge.svg);
./ui/core/_shared.scss: src: url(/wotlk/assets/PlusJakartaSans-Regular.woff2);
./ui/core/_shared.scss: src: url(/wotlk/assets/PlusJakartaSans-Bold.woff2);
./ui/core/sim_ui.ts: // downloadBinary.src = "/wotlk/assets/gauge.svg"
./ui/protection_paladin/_sim.scss: --theme-background-image: url('/wotlk/assets/prot_paladin.png');
./ui/warrior/_sim.scss: --theme-background-image: url('/wotlk/assets/warrior_background.jpg');
./ui/shadow_priest/_sim.scss: --theme-background-image: url('/wotlk/assets/shadow_priest_background.jpg');
./ui/balance_druid/_sim.scss: --theme-background-image: url('/wotlk/assets/balance_druid_background.jpg');
./ui/rogue/_sim.scss: --theme-background-image: url('/wotlk/assets/rogue_background.jpg');
./ui/feral_tank_druid/_sim.scss: --theme-background-image: url('/wotlk/assets/feral_druid_tank_background.jpg');
./ui/mage/_sim.scss: --theme-background-image: url('/wotlk/assets/mage_background.jpg');
./ui/deathknight/_sim.scss: --theme-background-image: url('/wotlk/assets/death_knight_background.jpg');
The $(OUT_DIR)
target in the project makefile relies on several .PHONY
targets. This results in large parts of the application being rebuilt when not necessary.
Example: I make a change to ui/detailed_results/timeline.ts
and run make host
Make host relies on $(OUT_DIR)
, which in turn relies on all the class targets (balance_druid
, feral_druid
etc), all of which are .PHONY
targets even though they are not marked as such. This causes make to rebuild every single class component every time i run make host
, even when not necessary.
The fix to this is to rely on real targets in $(OUT_DIR)
and not .PHONY
targets. The easiest way to achieve this might be to make each class target into a directory target, which will not have to be .PHONY
.
Ideally these targets could be made generic using the %
wildcard in make.
Racial changes overview: https://www.youtube.com/watch?v=Rj-AXH8rJRM
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.