Skip to content

Commit 36ff893

Browse files
committed
[Ret] More preset tweaks
1 parent d2a23c6 commit 36ff893

3 files changed

Lines changed: 45 additions & 27 deletions

File tree

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
{
22
"items": [
3-
{ "id": 87101, "gems": [] },
4-
{ "id": 90508 },
5-
{ "id": 86986, "gems": [] },
6-
{ "id": 86945 },
7-
{ "id": 87099, "gems": [] },
8-
{ "id": 90506, "gems": [] },
9-
{ "id": 87100, "gems": [] },
10-
{ "id": 86955, "gems": [] },
11-
{ "id": 87102, "gems": [] },
12-
{ "id": 86979094 },
13-
{ "id": 87158 },
3+
{ "id": 87101, "gems": [76886, 76684], "reforging": 138 },
4+
{ "id": 90508, "reforging": 138 },
5+
{ "id": 86986, "enchant": 4803, "gems": [76669], "reforging": 145 },
6+
{ "id": 86945, "enchant": 4424, "reforging": 140 },
7+
{ "id": 87099, "enchant": 4419, "gems": [76699, 76699], "reforging": 147 },
8+
{ "id": 90506, "enchant": 4415, "gems": [76699], "reforging": 138 },
9+
{ "id": 87100, "enchant": 4432, "gems": [76699], "reforging": 145 },
10+
{ "id": 86955, "enchant": 4223, "gems": [76699, 76684, 76669], "reforging": 168 },
11+
{ "id": 87102, "enchant": 4823, "gems": [76669], "reforging": 167 },
12+
{ "id": 86979, "enchant": 4426, "gems": [76699] },
13+
{ "id": 87158, "reforging": 138 },
1414
{ "id": 86957 },
1515
{ "id": 87172 },
1616
{ "id": 87072 },
17-
{ "id": 87176, "gems": [] },
17+
{ "id": 87176, "enchant": 4444, "gems": [89881], "reforging": 145 },
1818
{}
1919
]
2020
}

ui/paladin/retribution/presets.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,13 @@ export const DefaultOptions = RetributionPaladinOptions.create({
6262
seal: PaladinSeal.Truth,
6363
},
6464
});
65+
6566
export const DefaultConsumables = ConsumesSpec.create({
66-
flaskId: 76088, // Flask of Winter's Bite
67-
foodId: 74646, // Black Pepper Ribs and Shrimp
67+
// flaskId: 76088, // Flask of Winter's Bite
68+
// foodId: 74646, // Black Pepper Ribs and Shrimp
6869
potId: 76095, // Potion of Mogu Power
6970
prepotId: 76095, // Potion of Mogu Power
70-
tinkerId: 126734, // Synapse Springs Mark II
71+
// tinkerId: 126734, // Synapse Springs Mark II
7172
});
7273

7374
export const OtherDefaults = {

ui/paladin/retribution/sim.ts

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { IndividualSimUI, registerSpecConfig } from '../../core/individual_sim_u
55
import { Player } from '../../core/player.js';
66
import { PlayerClasses } from '../../core/player_classes';
77
import { APLRotation, APLRotation_Type } from '../../core/proto/apl.js';
8-
import { Debuffs, Faction, IndividualBuffs, ItemSlot, PartyBuffs, PseudoStat, Race, RaidBuffs, Spec, Stat } from '../../core/proto/common.js';
8+
import { Debuffs, Faction, IndividualBuffs, PartyBuffs, PseudoStat, Race, RaidBuffs, Spec, Stat, UnitStats } from '../../core/proto/common.js';
99
import { Stats, UnitStat } from '../../core/proto_utils/stats.js';
1010
import * as PaladinInputs from '../inputs.js';
1111
import * as RetributionInputs from './inputs.js';
@@ -28,6 +28,31 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRetributionPaladin, {
2828
// List any known bugs / issues here and they'll be shown on the site.
2929
knownIssues: [],
3030

31+
overwriteDisplayStats: (player: Player<Spec.SpecRetributionPaladin>) => {
32+
const playerStats = player.getCurrentStats();
33+
34+
const statMod = (current: UnitStats, previous?: UnitStats) => {
35+
return new Stats().withStat(Stat.StatSpellPower, Stats.fromProto(current).subtract(Stats.fromProto(previous)).getStat(Stat.StatAttackPower) * 0.5);
36+
};
37+
38+
const base = statMod(playerStats.baseStats!);
39+
const gear = statMod(playerStats.gearStats!, playerStats.baseStats);
40+
const talents = statMod(playerStats.talentsStats!, playerStats.gearStats);
41+
const buffs = statMod(playerStats.buffsStats!, playerStats.talentsStats);
42+
const consumes = statMod(playerStats.consumesStats!, playerStats.buffsStats);
43+
const final = new Stats().withStat(Stat.StatSpellPower, Stats.fromProto(playerStats.finalStats).getStat(Stat.StatAttackPower) * 0.5);
44+
45+
return {
46+
base: base,
47+
gear: gear,
48+
talents: talents,
49+
buffs: buffs,
50+
consumes: consumes,
51+
final: final,
52+
stats: [Stat.StatSpellPower],
53+
};
54+
},
55+
3156
// All stats for which EP should be calculated.
3257
epStats: [
3358
Stat.StatStrength,
@@ -52,6 +77,7 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRetributionPaladin, {
5277
Stat.StatSpellPower,
5378
Stat.StatMana,
5479
Stat.StatHealth,
80+
Stat.StatStamina,
5581
Stat.StatMasteryRating,
5682
],
5783
[
@@ -83,7 +109,9 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRetributionPaladin, {
83109
arcaneBrilliance: true,
84110
blessingOfKings: true,
85111
blessingOfMight: true,
112+
bloodlust: true,
86113
elementalOath: true,
114+
heroism: true,
87115
powerWordFortitude: true,
88116
serpentsSwiftness: true,
89117
timeWarp: true,
@@ -109,16 +137,6 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRetributionPaladin, {
109137
otherInputs: {
110138
inputs: [RetributionInputs.StartingHolyPower(), OtherInputs.InputDelay, OtherInputs.TankAssignment, OtherInputs.InFrontOfTarget],
111139
},
112-
itemSwapSlots: [
113-
ItemSlot.ItemSlotHead,
114-
ItemSlot.ItemSlotShoulder,
115-
ItemSlot.ItemSlotChest,
116-
ItemSlot.ItemSlotHands,
117-
ItemSlot.ItemSlotLegs,
118-
ItemSlot.ItemSlotTrinket1,
119-
ItemSlot.ItemSlotTrinket2,
120-
ItemSlot.ItemSlotMainHand,
121-
],
122140
encounterPicker: {
123141
// Whether to include 'Execute Duration (%)' in the 'Encounter' section of the settings tab.
124142
showExecuteProportion: false,
@@ -131,7 +149,6 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRetributionPaladin, {
131149
talents: [Presets.DefaultTalents],
132150
// Preset gear configurations that the user can quickly select.
133151
gear: [Presets.P1_GEAR_PRESET],
134-
itemSwaps: [],
135152
builds: [Presets.P1_BUILD_PRESET],
136153
},
137154

0 commit comments

Comments
 (0)