Skip to content

Commit

Permalink
master merge
Browse files Browse the repository at this point in the history
  • Loading branch information
sanguinerarogue committed Nov 17, 2024
2 parents ddf0e98 + 8419acb commit 72b74e7
Show file tree
Hide file tree
Showing 29 changed files with 815 additions and 423 deletions.
3 changes: 2 additions & 1 deletion assets/database/db.json
Original file line number Diff line number Diff line change
Expand Up @@ -10671,8 +10671,8 @@
{"effectId":929,"itemId":16217,"spellId":20069,"name":"Enchant Shield - Greater Stamina","type":13,"enchantType":2,"stats":[0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":1},
{"effectId":930,"spellId":13947,"name":"Enchant Gloves - Riding Skill","type":7,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":2},
{"effectId":931,"spellId":13948,"name":"Enchant Gloves - Minor Haste","type":7,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":1},
{"effectId":943,"spellId":13693,"name":"Enchant Weapon - Striking","type":13,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":1},
{"effectId":943,"spellId":13529,"name":"Enchant 2H Weapon - Lesser Impact","type":13,"enchantType":1,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":1},
{"effectId":943,"spellId":13693,"name":"Enchant Weapon - Striking","type":13,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":1},
{"effectId":963,"spellId":13937,"name":"Enchant 2H Weapon - Greater Impact","type":13,"enchantType":1,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":1},
{"effectId":1483,"itemId":11622,"spellId":15340,"name":"Lesser Arcanum of Rumination","type":1,"extraTypes":[9],"enchantType":3,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,150,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"quality":2},
{"effectId":1503,"itemId":11642,"spellId":15389,"name":"Lesser Arcanum of Constitution","type":1,"extraTypes":[9],"enchantType":3,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0],"quality":2},
Expand Down Expand Up @@ -15489,6 +15489,7 @@
{"id":453696,"name":"Engrave Ring - Fire Specialization","icon":"inv_jewelry_ring_31","requiresLevel":1},
{"id":453697,"name":"Engrave Ring - Frost Specialization","icon":"inv_jewelry_ring_31","requiresLevel":1},
{"id":457437,"name":"Vanish","icon":"ability_vanish","requiresLevel":1,"hasBuff":true},
{"id":457544,"name":"S03 - Item - T1 - Shaman - Tank 6P Bonus","icon":"ability_ghoulfrenzy","requiresLevel":1},
{"id":458436,"name":"Wyvern Strike","icon":"inv_spear_02","requiresLevel":1,"hasBuff":true},
{"id":458481,"name":"Wyvern Strike","icon":"inv_spear_02","requiresLevel":1,"hasBuff":true},
{"id":458482,"name":"Wyvern Strike","icon":"inv_spear_02","requiresLevel":1,"hasBuff":true},
Expand Down
1 change: 1 addition & 0 deletions assets/db_inputs/wowhead_spell_tooltips.csv
Original file line number Diff line number Diff line change
Expand Up @@ -21581,6 +21581,7 @@
453696,{"name":"Engrave Ring - Fire Specialization","icon":"inv_jewelry_ring_31","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=453696/engrave-ring-fire-specialization\"><b class=\"whtt-name\">Engrave Ring - Fire Specialization</b></a><br />3 sec cast<br /><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td><span class=\"wowhead-tooltip-requirements\">Requires Ring</span><div class=\"q\">Engrave your ring with the Fire Specialization rune:<br /><br /><span class=\"tooltip-inside-icon\" style=\"background-image: url(//wow.zamimg.com/images/wow/icons/small/inv_elemental_primal_fire.jpg)\"></span><br /><a href=\"/classic/spell=442894/fire-specialization\" target=\"_blank\">Chance to hit with Fire spells increased by 6%. Not cumulative with other ring runes.</a></div></td></tr></table>","tooltip2":"","buff":"","quality":-1,"spells":{},"buffspells":{},"completion_category":7}
453697,{"name":"Engrave Ring - Frost Specialization","icon":"inv_jewelry_ring_31","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=453697/engrave-ring-frost-specialization\"><b class=\"whtt-name\">Engrave Ring - Frost Specialization</b></a><br />3 sec cast<br /><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td><span class=\"wowhead-tooltip-requirements\">Requires Ring</span><div class=\"q\">Engrave your ring with the Frost Specialization rune:<br /><br /><span class=\"tooltip-inside-icon\" style=\"background-image: url(//wow.zamimg.com/images/wow/icons/small/inv_elemental_primal_water.jpg)\"></span><br /><a href=\"/classic/spell=442895/frost-specialization\" target=\"_blank\">Chance to hit with Frost spells increased by 6%. Not cumulative with other ring runes.</a></div></td></tr></table>","tooltip2":"","buff":"","quality":-1,"spells":{},"buffspells":{},"completion_category":7}
457437,{"name":"Vanish","icon":"ability_vanish","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=457437/vanish\"><b class=\"whtt-name\">Vanish</b></a><table width=\"100%\"><tr><td>Instant</td><th>5 min cooldown</th></tr></table><div class=\"wowhead-tooltip-requirements\">Requires Rogue</div><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td>Reagents:<br /><div class=\"indent q1\"><a href=\"/classic/item=5140/flash-powder\">Flash Powder</a></div><div class=\"q\">Reduces all Magic damage taken by 50% for 10 sec.</div></td></tr></table>","tooltip2":"","buff":"<table><tr><td><b class=\"q\">Vanish</b></td></tr></table><table><tr><td>Magic damage taken reduced by 50%.<br><span class=\"q\">10 seconds remaining</span></td></tr></table>","quality":-1,"spells":{},"buffspells":{},"completion_category":0}
457544,{"name":"S03 - Item - T1 - Shaman - Tank 6P Bonus","icon":"ability_ghoulfrenzy","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=457544/s03-item-t1-shaman-tank-6p-bonus\"><b class=\"whtt-name\">S03 - Item - T1 - Shaman - Tank 6P Bonus</b></a><div class=\"wowhead-tooltip-requirements\">Requires Shaman</div><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td><div class=\"q\">Your Stoneskin Totem also reduces Physical damage taken by 5% and your Windwall Totem also reduces Magical damage taken by 5%.</div></td></tr></table>","tooltip2":"","buff":"","quality":-1,"spells":{},"buffspells":{},"completion_category":-25}
458436,{"name":"Wyvern Strike","icon":"inv_spear_02","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=458436/wyvern-strike\"><b class=\"whtt-name\">Wyvern Strike</b></a><table width=\"100%\"><tr><td>55 Mana</td><th>Melee Range</th></tr></table><table width=\"100%\"><tr><td>Instant</td><th>8 sec cooldown</th></tr></table><div class=\"wowhead-tooltip-requirements\">Requires Hunter</div><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td><span class=\"wowhead-tooltip-requirements\">Requires Melee Weapon</span><div class=\"q\">A vicious strike that deals 100% weapon damage and causes the target to Bleed for (3 / 100 * 8 * Attack power) Physical damage over 8 sec.</div></td></tr></table>","tooltip2":"","buff":"<table><tr><td><b class=\"q\">Wyvern Strike</b></td></tr></table><table><tr><td>3 Bleed damage every 1 seconds.<br><span class=\"q\">8 seconds remaining</span></td></tr></table>","quality":-1,"spells":{},"buffspells":{},"completion_category":0}
458481,{"name":"Wyvern Strike","icon":"inv_spear_02","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=458481/wyvern-strike\"><b class=\"whtt-name\">Wyvern Strike</b></a><table width=\"100%\"><tr><td>75 Mana</td><th>Melee Range</th></tr></table><table width=\"100%\"><tr><td>Instant</td><th>8 sec cooldown</th></tr></table><div class=\"wowhead-tooltip-requirements\">Requires Hunter</div><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td><span class=\"wowhead-tooltip-requirements\">Requires Melee Weapon</span><div class=\"q\">A vicious strike that deals 100% weapon damage and causes the target to Bleed for (4 / 100 * 8 * Attack power) Physical damage over 8 sec.</div></td></tr></table>","tooltip2":"","buff":"<table><tr><td><b class=\"q\">Wyvern Strike</b></td></tr></table><table><tr><td>4 Bleed damage every 1 seconds.<br><span class=\"q\">8 seconds remaining</span></td></tr></table>","quality":-1,"spells":{},"buffspells":{},"completion_category":0}
458482,{"name":"Wyvern Strike","icon":"inv_spear_02","tooltip":"<table><tr><td><a class=\"whtt-name\" href=\"/classic/spell=458482/wyvern-strike\"><b class=\"whtt-name\">Wyvern Strike</b></a><table width=\"100%\"><tr><td>100 Mana</td><th>Melee Range</th></tr></table><table width=\"100%\"><tr><td>Instant</td><th>8 sec cooldown</th></tr></table><div class=\"wowhead-tooltip-requirements\">Requires Hunter</div><span class=\"wowhead-tooltip-requirements\">Requires level 1</span><br /></td></tr></table><table><tr><td><span class=\"wowhead-tooltip-requirements\">Requires Melee Weapon</span><div class=\"q\">A vicious strike that deals 100% weapon damage and causes the target to Bleed for (6 / 100 * 8 * Attack power) Physical damage over 8 sec.</div></td></tr></table>","tooltip2":"","buff":"<table><tr><td><b class=\"q\">Wyvern Strike</b></td></tr></table><table><tr><td>6 Bleed damage every 1 seconds.<br><span class=\"q\">8 seconds remaining</span></td></tr></table>","quality":-1,"spells":{},"buffspells":{},"completion_category":0}
Expand Down
53 changes: 53 additions & 0 deletions sim/common/sod/item_effects.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,3 +53,56 @@ func RegisterFiftyPercentHasteBuffCD(character *core.Character, actionID core.Ac
Type: core.CooldownTypeDPS,
})
}

func StormhammerChainLightningProcAura(agent core.Agent) {
character := agent.GetCharacter()

maxHits := int(min(3, character.Env.GetNumTargets()))
procSpell := character.RegisterSpell(core.SpellConfig{
ActionID: core.ActionID{SpellID: 463946},
SpellSchool: core.SpellSchoolNature,
DefenseType: core.DefenseTypeMagic,
ProcMask: core.ProcMaskEmpty,
Flags: core.SpellFlagNoOnCastComplete | core.SpellFlagPassiveSpell,
BonusCoefficient: 0.1,
DamageMultiplier: 1,
ThreatMultiplier: 1,
ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) {
for numHits := 0; numHits < maxHits; numHits++ {
spell.CalcAndDealDamage(sim, target, sim.Roll(105, 145), spell.OutcomeMagicHitAndCrit)
target = character.Env.NextTargetUnit(target)
}
},
})

core.MakeProcTriggerAura(&character.Unit, core.ProcTrigger{
Name: "Chain Lightning (Skyrider's Masterwork Stormhammer Melee)",
Callback: core.CallbackOnSpellHitDealt,
Outcome: core.OutcomeLanded,
ProcMask: core.ProcMaskMelee,
SpellFlagsExclude: core.SpellFlagSuppressWeaponProcs,
PPM: 4, // Someone in the armemnts Discord tested it out to 4 PPM
Handler: func(sim *core.Simulation, _ *core.Spell, result *core.SpellResult) {
procSpell.Cast(sim, result.Target)
},
})

icd := core.Cooldown{
Timer: character.NewTimer(),
Duration: time.Millisecond * 100,
}
core.MakeProcTriggerAura(&character.Unit, core.ProcTrigger{
Name: "Chain Lightning (Skyrider's Masterwork Stormhammer Spell)",
Callback: core.CallbackOnSpellHitDealt,
Outcome: core.OutcomeLanded,
ProcMask: core.ProcMaskSpellDamage,
ProcChance: .1,
Handler: func(sim *core.Simulation, _ *core.Spell, result *core.SpellResult) {
if !icd.IsReady(sim) {
return
}
procSpell.Cast(sim, result.Target)
icd.Use(sim)
},
})
}
54 changes: 2 additions & 52 deletions sim/common/sod/item_effects/phase_4.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"time"

"github.com/wowsims/sod/sim/common/itemhelpers"
"github.com/wowsims/sod/sim/common/sod"
"github.com/wowsims/sod/sim/core"
"github.com/wowsims/sod/sim/core/proto"
"github.com/wowsims/sod/sim/core/stats"
Expand Down Expand Up @@ -41,58 +42,7 @@ func init() {
// https://www.wowhead.com/classic/item=227886/skyriders-masterwork-stormhammer
// Chance on hit: Blasts up to 3 targets for 105 to 145 Nature damage.
// Estimated based on data from WoW Armaments Discord
core.NewItemEffect(SkyridersMasterworkStormhammer, func(agent core.Agent) {
character := agent.GetCharacter()

maxHits := int(min(3, character.Env.GetNumTargets()))
procSpell := character.RegisterSpell(core.SpellConfig{
ActionID: core.ActionID{SpellID: 463946},
SpellSchool: core.SpellSchoolNature,
DefenseType: core.DefenseTypeMagic,
ProcMask: core.ProcMaskEmpty,
Flags: core.SpellFlagNoOnCastComplete | core.SpellFlagPassiveSpell,
BonusCoefficient: 0.1,
DamageMultiplier: 1,
ThreatMultiplier: 1,
ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) {
for numHits := 0; numHits < maxHits; numHits++ {
spell.CalcAndDealDamage(sim, target, sim.Roll(105, 145), spell.OutcomeMagicHitAndCrit)
target = character.Env.NextTargetUnit(target)
}
},
})

core.MakeProcTriggerAura(&character.Unit, core.ProcTrigger{
Name: "Chain Lightning (Skyrider's Masterwork Stormhammer Melee)",
Callback: core.CallbackOnSpellHitDealt,
Outcome: core.OutcomeLanded,
ProcMask: core.ProcMaskMelee,
SpellFlagsExclude: core.SpellFlagSuppressWeaponProcs,
PPM: 4, // Someone in the armemnts Discord tested it out to 4 PPM
Handler: func(sim *core.Simulation, _ *core.Spell, result *core.SpellResult) {
procSpell.Cast(sim, result.Target)
},
})

icd := core.Cooldown{
Timer: character.NewTimer(),
Duration: time.Millisecond * 100,
}
core.MakeProcTriggerAura(&character.Unit, core.ProcTrigger{
Name: "Chain Lightning (Skyrider's Masterwork Stormhammer Spell)",
Callback: core.CallbackOnSpellHitDealt,
Outcome: core.OutcomeLanded,
ProcMask: core.ProcMaskSpellDamage,
ProcChance: .1,
Handler: func(sim *core.Simulation, _ *core.Spell, result *core.SpellResult) {
if !icd.IsReady(sim) {
return
}
procSpell.Cast(sim, result.Target)
icd.Use(sim)
},
})
})
core.NewItemEffect(SkyridersMasterworkStormhammer, sod.StormhammerChainLightningProcAura)

// https://www.wowhead.com/classic/item=228486/treants-bane
// Equip: +75 Attack Power when fighting Elementals.
Expand Down
Loading

0 comments on commit 72b74e7

Please sign in to comment.