Skip to content

Commit b84334c

Browse files
authored
Merge pull request #109 from wowsims/guardian
Tank attack table fix
2 parents 4fbef22 + f8cabbb commit b84334c

7 files changed

Lines changed: 13 additions & 11 deletions

File tree

sim/core/TestProtoVersioning.results

Lines changed: 0 additions & 1 deletion
This file was deleted.

sim/core/character.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -618,7 +618,7 @@ func (character *Character) GetPseudoStatsProto() []float64 {
618618
// Base values are modified by Enemy attackTables, but we display for LVL 80 enemy as paperdoll default
619619
proto.PseudoStat_PseudoStatDodgePercent: (character.PseudoStats.BaseDodgeChance + character.GetDiminishedDodgeChance()) * 100,
620620
proto.PseudoStat_PseudoStatParryPercent: (character.PseudoStats.BaseParryChance + character.GetDiminishedParryChance()) * 100,
621-
proto.PseudoStat_PseudoStatBlockPercent: 5 + character.GetStat(stats.BlockPercent),
621+
proto.PseudoStat_PseudoStatBlockPercent: (character.PseudoStats.BaseBlockChance + character.GetDiminishedBlockChance()) * 100,
622622

623623
// Used by UI to incorporate multiplicative Haste buffs into final character stats display.
624624
proto.PseudoStat_PseudoStatRangedSpeedMultiplier: character.PseudoStats.RangedSpeedMultiplier,

sim/core/stats/stats.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -436,7 +436,7 @@ type PseudoStats struct {
436436
// probabilities (between 0 and 1).
437437
BaseDodgeChance float64
438438
BaseParryChance float64
439-
//BaseMiss is not needed, this is always 5%
439+
BaseBlockChance float64
440440

441441
ReducedCritTakenChance float64 // Reduces chance to be crit.
442442

sim/core/target.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -255,9 +255,9 @@ func NewAttackTable(attacker *Unit, defender *Unit) *AttackTable {
255255
} else {
256256
table.BaseSpellMissChance = UnitLevelFloat64(attacker.Level, 0.06, 0.03, 0, -0.03)
257257
table.BaseMissChance = UnitLevelFloat64(attacker.Level, 0.03, 0.015, 0, -0.015)
258-
table.BaseBlockChance = UnitLevelFloat64(attacker.Level, 0.03, 0.015, 0, -0.015)
259-
table.BaseDodgeChance = UnitLevelFloat64(attacker.Level, 0.03, 0.015, 0, -0.015)
260-
table.BaseParryChance = UnitLevelFloat64(attacker.Level, 0.03, 0.015, 0, -0.015)
258+
table.BaseBlockChance = UnitLevelFloat64(attacker.Level, 0, -0.015, -0.03, -0.045)
259+
table.BaseDodgeChance = UnitLevelFloat64(attacker.Level, 0, -0.015, -0.03, -0.045)
260+
table.BaseParryChance = UnitLevelFloat64(attacker.Level, 0, -0.015, -0.03, -0.045)
261261
}
262262

263263
return table

sim/core/unit.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -721,7 +721,8 @@ func (unit *Unit) GetTotalChanceToBeMissedAsDefender(atkTable *AttackTable) floa
721721
}
722722

723723
func (unit *Unit) GetTotalBlockChanceAsDefender(atkTable *AttackTable) float64 {
724-
chance := atkTable.BaseBlockChance +
724+
chance := unit.PseudoStats.BaseBlockChance +
725+
atkTable.BaseBlockChance +
725726
unit.GetDiminishedBlockChance()
726727
return math.Max(chance, 0.0)
727728
}

sim/monk/brewmaster/TestBrewmaster.results

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3086,10 +3086,10 @@ dps_results: {
30863086
dps_results: {
30873087
key: "TestBrewmaster-Average-Default"
30883088
value: {
3089-
dps: 116510.47879
3090-
tps: 116510.47879
3091-
dtps: 46610.76715
3092-
hps: 12007.64212
3089+
dps: 116511.51533
3090+
tps: 116511.51533
3091+
dtps: 46625.34082
3092+
hps: 12006.42408
30933093
}
30943094
}
30953095
dps_results: {

sim/monk/monk.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,8 @@ func NewMonk(character *core.Character, options *proto.MonkOptions, talents stri
232232
core.FillTalentsProto(monk.Talents.ProtoReflect(), talents)
233233

234234
monk.PseudoStats.CanParry = true
235+
monk.PseudoStats.BaseParryChance += 0.03
236+
monk.PseudoStats.BaseDodgeChance += 0.03
235237
monk.XuenPet = monk.NewXuen()
236238

237239
monk.registerSEFPets()

0 commit comments

Comments
 (0)