Skip to content

Commit f209649

Browse files
authored
Merge pull request #1053 from wowsims/guardian
Horridon P2 Boss Model
2 parents 8c6f203 + 3933028 commit f209649

22 files changed

Lines changed: 2421 additions & 1648 deletions

assets/database/db.bin

1.03 KB
Binary file not shown.

assets/database/db.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18767,7 +18767,8 @@
1876718767
{"path":"Default/Movement","targets":[{"path":"Default/Movement","target":{"id":31147,"name":"Movement","level":93,"mobType":7,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,120016403,0,0],"minBaseDamage":550000,"damageSpread":0.4,"swingSpeed":2,"targetInputs":[{"inputType":1,"label":"Movement Interval","tooltip":"How often the player will move in seconds","numberValue":10},{"inputType":1,"label":"Reaction Time","tooltip":"How long the player can wait for casts to finish before moving in seconds","numberValue":1.5},{"inputType":1,"label":"Yards","tooltip":"How many yards the player moves","numberValue":5}]}}]},
1876818768
{"path":"Mogu'shan Vaults/Gara'jal the Spiritbinder 25 H","targets":[{"path":"Mogu'shan Vaults/Gara'jal the Spiritbinder 25 H","target":{"id":60143,"name":"Gara'jal the Spiritbinder 25 H","level":93,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,542990565,0,0],"minBaseDamage":337865,"damageSpread":0.4846,"swingSpeed":1.5,"targetInputs":[{"inputType":1,"label":"Frenzy time","tooltip":"Simulation time (in seconds) at which to disable tank swaps and enable the boss Frenzy buff","numberValue":256},{"inputType":1,"label":"Spiritual Grasp frequency","tooltip":"Average time (in seconds) between Spiritual Grasp hits, following an exponential distribution","numberValue":8.25}]}},{"path":"Mogu'shan Vaults/Severer of Souls 25 H","target":{"id":66992,"name":"Severer of Souls 25 H","level":92,"mobType":2,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,758866,0,0],"disabledAtStart":true}}]},
1876918769
{"path":"Heart of Fear/Grand Empress Shek'zeer 25 H P2 Adds","targets":[{"path":"Heart of Fear/Set'thik Windblade 25 H - 1","target":{"id":6445301,"name":"Set'thik Windblade 25 H - 1","level":92,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,53120592,0,0],"minBaseDamage":128513,"damageSpread":1.9462,"swingSpeed":1.5,"dualWield":true}},{"path":"Heart of Fear/Set'thik Windblade 25 H - 2","target":{"id":6445302,"name":"Set'thik Windblade 25 H - 2","level":92,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,53120592,0,0],"minBaseDamage":128513,"damageSpread":1.9462,"swingSpeed":1.5,"dualWield":true}},{"path":"Heart of Fear/Set'thik Windblade 25 H - 3","target":{"id":6445303,"name":"Set'thik Windblade 25 H - 3","level":92,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,53120592,0,0],"minBaseDamage":128513,"damageSpread":1.9462,"swingSpeed":1.5,"dualWield":true}},{"path":"Heart of Fear/Set'thik Windblade 25 H - 4","target":{"id":6445304,"name":"Set'thik Windblade 25 H - 4","level":92,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,53120592,0,0],"minBaseDamage":128513,"damageSpread":1.9462,"swingSpeed":1.5,"dualWield":true}},{"path":"Heart of Fear/Set'thik Windblade 25 H - 5","target":{"id":6445305,"name":"Set'thik Windblade 25 H - 5","level":92,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,53120592,0,0],"minBaseDamage":128513,"damageSpread":1.9462,"swingSpeed":1.5,"dualWield":true}},{"path":"Heart of Fear/Set'thik Windblade 25 H - 6","target":{"id":6445306,"name":"Set'thik Windblade 25 H - 6","level":92,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,53120592,0,0],"minBaseDamage":128513,"damageSpread":1.9462,"swingSpeed":1.5,"dualWield":true}}]},
18770-
{"path":"Terrace of Endless Spring/Sha of Fear 25 H P2","targets":[{"path":"Terrace of Endless Spring/Sha of Fear 25 H","target":{"id":60999,"name":"Sha of Fear 25 H","level":93,"mobType":4,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,1632111860,0,0],"minBaseDamage":620921,"damageSpread":0.6195,"swingSpeed":2.5}}]}
18770+
{"path":"Terrace of Endless Spring/Sha of Fear 25 H P2","targets":[{"path":"Terrace of Endless Spring/Sha of Fear 25 H","target":{"id":60999,"name":"Sha of Fear 25 H","level":93,"mobType":4,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,1632111860,0,0],"minBaseDamage":620921,"damageSpread":0.6195,"swingSpeed":2.5}}]},
18771+
{"path":"Throne of Thunder/Horridon 25 H P2","targets":[{"path":"Throne of Thunder/Horridon 25 H","target":{"id":68476,"name":"Horridon 25 H","level":93,"mobType":1,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,1962616500,0,0],"minBaseDamage":512867,"damageSpread":0.5508,"swingSpeed":2,"targetInputs":[{"inputType":1,"label":"Jalak death time","tooltip":"Simulation time (in seconds) at which to disable War-God Jalak and trigger the Rampage buff on Horridon. If set longer than the simulated fight length, then Jalak will be tanked the entire time and Rampage will never be triggered.","numberValue":33},{"label":"Taunt swap for Triple Puncture","tooltip":"If checked, taunt swap upon Jalak's death and on every other Triple Puncture application afterwards in order to limit stack accumulation on a single tank.","boolValue":true}]}},{"path":"Throne of Thunder/War-God Jalak 25 H","target":{"id":69374,"name":"War-God Jalak 25 H","level":93,"mobType":6,"stats":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24835,0,78504660,0,0],"minBaseDamage":389785,"damageSpread":0.8264,"swingSpeed":2,"tankIndex":1}}]}
1877118772
],
1877218773
"glyphIds":[
1877318774
{"itemId":40896,"spellId":54810},

assets/database/leftover_db.bin

0 Bytes
Binary file not shown.

assets/locales/en/translation.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,14 @@
596596
"label": "Spiritual Grasp frequency",
597597
"tooltip": "Average time (in seconds) between Spiritual Grasp hits, following an exponential distribution"
598598
},
599+
"jalak_death_time": {
600+
"label": "Jalak death time",
601+
"tooltip": "Simulation time (in seconds) at which to disable War-God Jalak and trigger the Rampage buff on Horridon. If set longer than the simulated fight length, then Jalak will be tanked the entire time and Rampage will never be triggered."
602+
},
603+
"taunt_swap_for_triple_puncture": {
604+
"label": "Taunt swap for Triple Puncture",
605+
"tooltip": "If checked, taunt swap upon Jalak's death and on every other Triple Puncture application afterwards in order to limit stack accumulation on a single tank."
606+
},
599607
"movement_interval": {
600608
"label": "Movement Interval",
601609
"tooltip": "How often the player will move in seconds"

assets/locales/fr/translation.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,14 @@
596596
"label": "Fréquence d'Etreinte spirituelle",
597597
"tooltip": "Temps moyen (en secondes) entre les coups d'Etreinte spirituelle, suivant une distribution exponentielle"
598598
},
599+
"jalak_death_time": {
600+
"label": "Temps de mort de Jalak",
601+
"tooltip": "Temps de simulation (en secondes) auquel désactiver War-God Jalak et déclencher le buff Rampage sur Horridon. Si défini plus longtemps que la durée de combat simulée, alors Jalak sera tanké tout le temps et Rampage ne sera jamais déclenché."
602+
},
603+
"taunt_swap_for_triple_puncture": {
604+
"label": "Échange de provocation pour Triple perforation",
605+
"tooltip": "Si coché, échange de provocation à la mort de Jalak et à chaque autre application de Triple perforation par la suite afin de limiter l'accumulation de charges sur un seul tank."
606+
},
599607
"movement_interval": {
600608
"label": "Intervalle de mouvement",
601609
"tooltip": "À quelle fréquence le joueur se déplacera en secondes"

schemas/translation.schema.json

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2465,6 +2465,38 @@
24652465
"tooltip"
24662466
]
24672467
},
2468+
"jalak_death_time": {
2469+
"type": "object",
2470+
"properties": {
2471+
"label": {
2472+
"type": "string"
2473+
},
2474+
"tooltip": {
2475+
"type": "string"
2476+
}
2477+
},
2478+
"additionalProperties": false,
2479+
"required": [
2480+
"label",
2481+
"tooltip"
2482+
]
2483+
},
2484+
"taunt_swap_for_triple_puncture": {
2485+
"type": "object",
2486+
"properties": {
2487+
"label": {
2488+
"type": "string"
2489+
},
2490+
"tooltip": {
2491+
"type": "string"
2492+
}
2493+
},
2494+
"additionalProperties": false,
2495+
"required": [
2496+
"label",
2497+
"tooltip"
2498+
]
2499+
},
24682500
"movement_interval": {
24692501
"type": "object",
24702502
"properties": {
@@ -2519,6 +2551,8 @@
25192551
"label",
25202552
"frenzy_time",
25212553
"spiritual_grasp_frequency",
2554+
"jalak_death_time",
2555+
"taunt_swap_for_triple_puncture",
25222556
"movement_interval",
25232557
"reaction_time",
25242558
"yards"

sim/core/health.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,9 @@ func (character *Character) trackChanceOfDeath(healingModel *proto.HealingModel)
117117
OnSpellHitTaken: func(aura *Aura, sim *Simulation, spell *Spell, result *SpellResult) {
118118
if result.Damage > 0 {
119119
aura.Unit.RemoveHealth(sim, result.Damage)
120-
aura.Unit.ReactToEvent(sim, false)
120+
if aura.Unit.Rotation != nil {
121+
aura.Unit.ReactToEvent(sim, false)
122+
}
121123

122124
if (aura.Unit.CurrentHealth() <= 0) && !aura.Unit.Metrics.Died {
123125
// Queue a pending action to let shield effects give health

0 commit comments

Comments
 (0)