Quote Optimal Stats for all 24 Disciplines to Maximize Average DPS, DtPS or HPS in PVE

Bant the Fat and Pink

Co-GM of Psy-Ops on The Harbinger

Patch 5.0.1a

Warning: No longer being Updated.



Abstract:

The goal is to find the set of Character Stats that would yield the best expected DPS/HPS/DtPS for any given Stat budget. To accomplish this, a method was utilized to accurately and repeatedly calculate the expected DPS/HPS/DtPS for each of the 24 Disciplines on a time averaged basis. With this method it becomes possible to iterate through all of the stat combinations in order to find the stat combination that would yield the best result. This approach focuses on PVE single target, Operations Target dummy encounters for the DPS, Average Boss Damage Profile for Tanks and a 3 target approach for Healers.



Previous Changes:

Spoiler

Update: 12/31/2016 Final Update.

Juggernauts - Rage: Fixed Rotation to use less Chilling Screams to make rotation have no delays. Replaced Ravage entirely with Chilling Scream.

Update: 12/02/2016 5.0 Update (see Patch notes and realize that that was just a brief overview) Non-Game Patch Related Changes and bug fixes 8/10/2016: Changed to new spreadsheet copy for 5.0.

Many Behind the scene updates, changes and comments.

Warning: will be fully unsubscribed by the end of 2016 which means no new updates and no responding to comments. Comments will be responded to on the google docs, regardless.



Update: 8/10/2016 Examined New Eternal Relics. (Not worth using). Non-Game Patch Related Changes and bug fixes 8/10/2016: Methodology Change: Now using probabilistic method to incorporate relics and critical hits for the final DPS/HPS output. This does not materially change the Average DPS/HPS or gear choice, but it now allows for the the Calculation of Standard Error. See Standard Error Section for Details

Standard Error now included with all DPS/HPS outputs. See Standard Error Section for Details and Restrictions.

Added ability to easily examine different Relic combinations.

Juggernauts - Immortal: Fixed Force Scream Usage to match Cooldown.

Assassin - Deception: Reclassified Discharge as a multiplier of x3 instead of 3 separate hits.

Mercenary - Bodyguard: Fixed multiple issues with the rotation with regards to Emergency Scan cooldown, Healing Scan Cooldown and maximizing progressive scans and supercharge usages.

Mercenary - Arsenal: Fixed Alacrity boost from Vent Heat.

Powertech - Advanced Prototype: Reclassified Energy Burst as a multiplier of x4 instead of 4 separate hits.

Sniper - Engineering: Fixed Orbital Strike to correctly ignore Armor.

Sniper - Engineering: Adjusted Filler Ratio with Corrosive Dart to better match energy recovery.

Sniper - Virulence: Added in Missing Ticks to Corrosive Mine, each of the three bombs now tick 3 times.

Sniper - Virulence: Reduced Takedown usage under Weakening Blast, being replaced by Lethal Shot.

Operative - Concealment: Added in Stim Boost Tactical Advantage usage, reduced Corrosive Dart usage for energy balance.

Operative - Lethality: Fixed Stealth and Stim Boost usage in Lethality Rotation with respect to Tactical Advantage.



Update: 6/1/2016

Spoiler Updated to include the changes to Corruption || Seer from patch 4.5 (Rotation and Coefficients)

All Disciplines have been recalculated for 4.5 Non-Game Patch Related Changes and bug fixes 6/1/2016: Marauder - Annihilation: Fixed issues with Swift Demise, redistributed Berserk,and 2 set bonus. (thanks Ryuku-sama)

Marauder - Fury: Fixed APM count, fixed error on Raging Burst critical multiplier, fixed execute issue , redistributed 2 set bonus. (thanks Ryuku-sama)

Juggernaut - Vengeance: Modified Rotation. (thanks GrandlordMenace)

Juggernaut - Rage: Fixed issues with Retaliation ability type, redistributed Heightened Power and 2 set bonus. (thanks Ryuku-sama)

Sorcerer - Madness: Fixed error made with Disintegration. (thanks Ryuku-sama)

Tanks: Fixed error in DtPS calculation that applied the Internal/Elemental damage reduction buff from healers twice.

Tanks: Fixed pointer error that may have imported some incorrect defensive stats.





Update: 2/9/2016

Spoiler Added in the Changes to Relic stat distribution (Critical and Shield)

Changed default stim usage to Polybiotic from Anodyne.

Added the ability to use a third stim type: Proficient. This stim gives Accuracy and Critical.

Created Separate categories for Mastery Stim and Accuracy Stim to allow for player preferences

Allowed for Optimizer to pick the “best” stim for the dps chart. Stim is forced for the gear breakdown for clarity.

Added additional verbiage to reflect the new changes

All Disciplines have been recalculated for 4.1 Non-Patch Related Changes 2/9/2016: Marauder - Annihilation: Added Force Scream into the rotation.

Marauder - Annihilation: Changed Berserk usage rate to better match fury generation

Marauder - Annihilation: Tweaked the Assault to Vicious Slash Ratio to better match the estimated Rage generation and the introduction of Force Scream into the rotation.

Marauder - Carnage: Changed rotation to Devastating Blast Focused (g_mk rotation)

Marauder - Carnage: Tied set bonus buffs to individual abilities rather than time averaged because the rotation and use of berserk create a situation where the set bonuses will always be active during certain moves.

Marauder - Fury: Fixed input error for the critical bonus damage of force abilities

Sorcerer - Lightning: Fixed error made with Chaos Nexus that applied the effect with forked lightning and forked darkness instead of only forked lightning.

Sorcerer - Lightning: Tweaked rotation usage rates to reflect actual usage rates rather than the previously calculated estimated priority delay.

Tanks - Use Power Relic as the default alternate relic (replacing Mastery Relic) when gearing for higher endurance.

Tanks - Arbitrarily changed the pre-mitigation dtps to 6000 and the boss hit rate to 1s.

Code Change - Fixed the way I handle relics to give the correct stats based on the relic type rather than predetermined values

Code Change - Allowed for minimum levels of tertiary stats to allow for items that give only a single stat type (eg relics and stims)

Code Change - Allowed for the choice of multiple stim types (Accuracy Stim) and optimization across all of them.

Output Change - Stim Type is always displayed to avoid confusion





Update: 12/8/2015

Spoiler 4.0.3 Changes (See official patch notes for full list)

Due to the 4.0.3 Ability cost changes for Assassins | Shadows, the ratio between Saber Strikes and Thrash / Double Strike / Voltaic Slash / Clairvoyant Strike has been adjusted for Deception | Infiltration and Hatred | Serenity.

Corrosive Grenade | Shrap Bomb is now correctly classified as an AOE dot

Added the Force/Tech Resistance granted by Ravage | Blade Dance in addition to the defense bonuses

stacks of Wrath | Presence of Mind now correctly grant the 25% value from the tooltip instead of the reduced 20% from 3.0 value.

Redetermined a steady state rotation for Madness | Balance that uses all abilities except force leech | exactly on cooldown and uses as many clipped Force Lightnings | Telekinetic Throws as possible to replace Lightning Strikes | Disturbances (Thanks IkarusXY for bringing it to my attention and to Ceazare for confirming)

Fixed Bug in my code for the Increased Health Tank option that accidentally included defense from on a DPS relic. (Thanks SchnellesWiesel)

Fixed Cluster Bomb | Contingency Charge to benefit from the Auto-Crits granted by Laze Target | Smuggler’s Luck.

Found unsolved Issue with Orbital Strike | XS Freighter Flyby doing double my predicted damage in game. Temporary fix added to match in game numbers

All Disciplines have been recalculated for 4.0.3





Update: 11/2/2015

Spoiler Added enhancement count to output upon popular request. Reminder: Enhancement = Implant = Earpiece.

Enhancement, Augment and Crystal count consolidated to single letters for space reasons

Modified Tank output to also include increased HP options via B mods and a single DPS relic

Armor rating changed from my 35% (8831) estimate to the actual target dummy value of 39.87% (10874). (thanks Ceazare)

Tanks had the wrong power value listed. This has been fixed and now has been replaced with Endurance. (thanks Gaspodia)

Because of the large number of requests for having more than 110%, Accuracy has now been forced to use a value greater than or equal to 681.

Virulence rotation changed (thanks TACeMossie)

All Disciplines have been recalculated based on the new armor rating and with the new Accuracy requirement. This changes most of the augment distribution and all of the dps rankings.





Update: 10/27/2015

Spoiler Initial Post, Patch 4.0.0

Original 3.0 post removed due to Moderator decisions. This post will try to avoid having that occur again.















Introduction:

In 4.0, Knights of the Fallen Empire arrived and with the focus on story comes with a whole host of behind the scenes changes that affect the gearing meta. There are many new tiers of gear, a level increase of 5 levels, new passives for every discipline, stat consolidations, changes to existing Stats of Critical and Accuracy and the introduction of Super Crit.

5.0 brought RNG gearing. I am not a fan of it, but my enthusiasm for SWTOR has been dropping for a while.

The method I used to find the optimal gearing was to build a mathematical model that incorporated as many variables as I could find that defines the combat in Star Wars The Old Republic. This mathematical model was used to test various gear combinations and the result that had the highest average DPS was returned as the optimal value.



”All models are wrong but some are useful.”

- George Box, Statistician

I am not infallible and all dps, hps and dtps numbers here should therefore be taken with a grain of salt because of this. I do try to continuously learn and improve so the numbers in this post will change with new information and corrections.

Another reminder is that it is next to impossible to spot any differences between specs that are within ~100-200 rating of the optimal setup, so don’t feel forced to take exactly these numbers. Most of the time, the model’s results for the different stat setups are within a few dps of the top result. Use your own judgement to match your playstyle..





5.0 Gearing Changes:

Spoiler

In 5.0, all tiers of gear are obtained from Galactic Command Lockboxes. Each lockbox contains random items that may or may not be useful. On top of this, there are different ilvls of gear that can be obtained based on your command Rank. Gear is no longer obtained in operations and the entire system seems to be designed to be the anithesis of the Legacy system. Grinding a single character is the only way to reach heigher tiers of gear with no way to obtain gear for multiple alternate characters. Even when Rank 300 (max) Galactic Command is reached, it is extremely likely for a character to not have a complete set of their top tier gear.

My distaste for RNG gearing aside, I will be including the optimal stats for all of the non-blue and non-green gear obtained from the Galactic command boxes. The remaining Gear is either Artifact (Purple) or Legendary (yellow). Each Tier of Galactic command has access to different gear. I will use gear from the following tiers: Tier 1 (GC 1-89) Artifact: Eternal Commander MK-3 (ilvl 230)

Tier 2 (GC 90-179) Artifact: Eternal Commander MK-13 (ilvl 234)

Tier 2 (GC 90-179) Artifact: Eternal Commander MK-15 (ilvl 236)

Tier 2 (GC 180-300) Artifact: Iokath MK-3 (ilvl 240)

Tier 2 (GC 180-300) Artifact: Iokath MK-5 (ilvl 242)

I also find it irritating that gearing in 5.0 completely abandons the gearing ilvl convention that SWTOR had up til this point where each ilvl was 4 above the previous ilvl. Not mention changing the meaning of the MK-# system that they put in place where the BIS slot gear was always MK-1.

I can’t fully express how much I dislike these changes to the gearing system.

In 5.0, all tiers of gear are obtained from Galactic Command Lockboxes. Each lockbox contains random items that may or may not be useful. On top of this, there are different ilvls of gear that can be obtained based on your command Rank. Gear is no longer obtained in operations and the entire system seems to be designed to be the anithesis of the Legacy system. Grinding a single character is the only way to reach heigher tiers of gear with no way to obtain gear for multiple alternate characters. Even when Rank 300 (max) Galactic Command is reached, it is extremely likely for a character to not have a complete set of their top tier gear.My distaste for RNG gearing aside, I will be including the optimal stats for all of the non-blue and non-green gear obtained from the Galactic command boxes. The remaining Gear is either Artifact (Purple) or Legendary (yellow). Each Tier of Galactic command has access to different gear. I will use gear from the following tiers:I also find it irritating that gearing in 5.0 completely abandons the gearing ilvl convention that SWTOR had up til this point where each ilvl was 4 above the previous ilvl. Not mention changing the meaning of the MK-# system that they put in place where the BIS slot gear was always MK-1.I can’t fully express how much I dislike these changes to the gearing system.





4.0 Stat Changes:

Spoiler Stat Consolidation Willpower, Strength, Aim and Cunning were all combined into a single stat: Mastery. Mastery behaves the same as the previous main stats and benefits from all of the datacrons (Legacy based now). The biggest change from this is the removal of an offstat that would allow for slightly higher crit values due to differing main stat diminishing returns curves. This always was a minor boost and is counterbalanced by the additional datacrons.

The Secondary slot that previously held Power, Critical, Absorb and Defense has been consolidated to only hold Power and Defense. Both Critical and Absorb have been moved the the tertiary stat slot. The net effect of this is that all secondary slots in the gear can only be Power or Defense.

Surge has been removed from the game and its previous effect has been added to Critical.

These changes removes a lot of the customization options gearwise from the game. Enhancements (and implants and earpieces) and augments are now the only sources of choice. This reduces the number of unique combinations a much lower level.







Accuracy Two changes have been made to Accuracy.

The first change is that all basic attacks that previously had a 10% accuracy penalty now no longer have an accuracy penalty and now behave in the same way as every other move.

The second is that the curve has been slightly adjusted so less accuracy is needed to reach the goal of 110%. The new goal at level 70 is 737.

Critical Critical is now in the tertiary stat slot and now affects both critical chance and critical multiplier. The curves have been adjusted for both and are exactly the same. This new curve allows for more points to be put in than before and thus keeping its usefulness even with very high values.







Super Crit! Super Crit is an addition that finally makes Critical Chance matter even for classes that use Autocrits. What Super Crit does is increase the Critical Multiplier for any move that has greater than 100% chance to crit. This bonus is based on Critical chance. This is not a straight addition of the two numbers, instead it is multiplicative increase.

The bonus is: [Critical Multiplier] * Max(100%, [Critical Chance %] + [100% Autocrit] )

This change makes critical chance always useful and buffs any class that has autocrits (including the 6 set for most dps)

Willpower, Strength, Aim and Cunning were all combined into a single stat: Mastery. Mastery behaves the same as the previous main stats and benefits from all of the datacrons (Legacy based now). The biggest change from this is the removal of an offstat that would allow for slightly higher crit values due to differing main stat diminishing returns curves. This always was a minor boost and is counterbalanced by the additional datacrons.The Secondary slot that previously held Power, Critical, Absorb and Defense has been consolidated to only hold Power and Defense. Both Critical and Absorb have been moved the the tertiary stat slot. The net effect of this is that all secondary slots in the gear can only be Power or Defense.Surge has been removed from the game and its previous effect has been added to Critical.These changes removes a lot of the customization options gearwise from the game. Enhancements (and implants and earpieces) and augments are now the only sources of choice. This reduces the number of unique combinations a much lower level.Two changes have been made to Accuracy.The first change is that all basic attacks that previously had a 10% accuracy penalty now no longer have an accuracy penalty and now behave in the same way as every other move.The second is that the curve has been slightly adjusted so less accuracy is needed to reach the goal of 110%. The new goal at level 70 is 737.Critical is now in the tertiary stat slot and now affects both critical chance and critical multiplier. The curves have been adjusted for both and are exactly the same. This new curve allows for more points to be put in than before and thus keeping its usefulness even with very high values.Super Crit is an addition that finally makes Critical Chance matter even for classes that use Autocrits. What Super Crit does is increase the Critical Multiplier for any move that has greater than 100% chance to crit. This bonus is based on Critical chance. This is not a straight addition of the two numbers, instead it is multiplicative increase.The bonus is: [Critical Multiplier] * Max(100%, [Critical Chance %] + [100% Autocrit] )This change makes critical chance always useful and buffs any class that has autocrits (including the 6 set for most dps)



Methodology:

Spoiler

Stat determination:

Started off by establishing the total Stat Pools from the gear and then fetch the individual discipline data.

Accuracy Value = closest value to 684 (+9%) Accuracy that is more than 679 (+8.95%)

The Accuracy Budget is set as the closest value. (see

This sets the number of enhancements (Implants = Earpiece = Enhancements) and augments available.





The following are contained within nested loops: 0 - K Critical Enhancements ( K = 10 - # of Accuracy Enhancements used)

0 - N Critical Augments ( N = 14 - # of Accuracy Augments )

0 - P Alacrity Augments ( P = 14 - # of Accuracy Augments used - # of Critical Augments used)

0 - 2 Critical Crystals

Mastery Stim or Accuracy Stim

This let me cycle through all stat combinations because of the following: (I default to using Mastery Augments and Crystals because mathematically they are slightly better than Power Augments and Crystals) Mastery = Mastery Stat Pool + 1.05 * ( Augment Value * Remaining Augments + 41 * ( 2 - # of Critical Crystals ) )

Power = Power Stat Pool

Accuracy = # of Accuracy Enhancements + # of Accuracy Augments

Critical = # of Critical Enhancements + # of Critical Augments + # of Critical Crystals

Alacrity = # of Alacrity Enhancements + # of Alacrity Augments



Tanks use similar calculation with Defense replacing Power, Shield replacing Critical and Absorb replacing Alacrity.

For each Stat combination, DPS, HPS or DtPS is calculated and the maximum value is returned as the optimal stat distribution.

Stat determination:Started off by establishing the total Stat Pools from the gear and then fetch the individual discipline data.Accuracy Value = closest value to 684 (+9%) Accuracy that is more than 679 (+8.95%)The Accuracy Budget is set as the closest value. (see here for combination choices)This sets the number of enhancements (Implants = Earpiece = Enhancements) and augments available.The following are contained within nested loops:This let me cycle through all stat combinations because of the following: (I default to using Mastery Augments and Crystals because mathematically they are slightly better than Power Augments and Crystals)Tanks use similar calculation with Defense replacing Power, Shield replacing Critical and Absorb replacing Alacrity.For each Stat combination, DPS, HPS or DtPS is calculated and the maximum value is returned as the optimal stat distribution.





DPS and HPS Calculation:

Spoiler

[DPS] = 1 / ( 0.7 / [Normal DPS] + 0.3 / [Execute DPS] )

[Normal DPS] = sum of all individual [Abilities DPS]

[Execute DPS] = sum of all individual [Abilities DPS] when sub 30%





[Ability DPS] =

( ( [Avg Mainhand Weapon Damage] x [1 + AmountModifierPercent] + [Bonus Damage/Force/Tech/Heal] x [Coefficient] + [Avg StandardHealthPercent]*[Base_DMG or Base_Heal] ) x [Accuracy %] + [Avg offhand Weapon Damage] x [1 + AmountModifierPercent] x [Offhand Accuracy] )

x ( 1 + [Ability Bonus Damage] + [Ability Active Damage] + [Debuff for F/T/M/R] + [Debuff for I/E])

x ( 1 + [Ability Damage Multipliers] )

x ( 1 + [Debuff for AOE] )

x ( 1 + [Execute Bonus Damage] )

x ( [# of Hits] )

x ( 1 + ( ( [Crit %] + [Ability Crit % bonus] ) + [Autocrit Proc Rate] / [Time Averaged Usage] ) x ( [Crit Bonus Damage] + [Ability Crit Damage Bonus] ) )

x ( 1 - 1 / ( 1 + ( ( 800 + 240 * [Level] ) / ( [Target Armor] x ( 1 - [Armor Debuff] ) x ( 1 - [Armor Penetration] ) ) ) ) )

x ( 1 + [Alacrity %] + [Average Alacrity % bonus] ) / [Time Averaged Usage]





Character Sheet Formulas can be found here: (Thanks Dipstik)

http://www.swtor.com/community/showthread.php?t=843004

[DPS] = 1 / ( 0.7 / [Normal DPS] + 0.3 / [Execute DPS] )[Normal DPS] = sum of all individual [Abilities DPS][Execute DPS] = sum of all individual [Abilities DPS] when sub 30%[Ability DPS] =( ( [Avg Mainhand Weapon Damage] x [1 + AmountModifierPercent] + [Bonus Damage/Force/Tech/Heal] x [Coefficient] + [Avg StandardHealthPercent]*[Base_DMG or Base_Heal] ) x [Accuracy %] + [Avg offhand Weapon Damage] x [1 + AmountModifierPercent] x [Offhand Accuracy] )x ( 1 + [Ability Bonus Damage] + [Ability Active Damage] + [Debuff for F/T/M/R] + [Debuff for I/E])x ( 1 + [Ability Damage Multipliers] )x ( 1 + [Debuff for AOE] )x ( 1 + [Execute Bonus Damage] )x ( [# of Hits] )x ( 1 + ( ( [Crit %] + [Ability Crit % bonus] ) + [Autocrit Proc Rate] / [Time Averaged Usage] ) x ( [Crit Bonus Damage] + [Ability Crit Damage Bonus] ) )x ( 1 - 1 / ( 1 + ( ( 800 + 240 * [Level] ) / ( [Target Armor] x ( 1 - [Armor Debuff] ) x ( 1 - [Armor Penetration] ) ) ) ) )x ( 1 + [Alacrity %] + [Average Alacrity % bonus] ) / [Time Averaged Usage]Character Sheet Formulas can be found here: (Thanks Dipstik)





DtPS Calculation:

Spoiler

All I did was attempt to implement the known calculations for Tanks from KeyBoardNinja and Dipstik and credit should go to them.

(Also If you really care about Mitigation, you shouldn’t be listening to be and instead go look at their work)





[DtPS] = [Mitigation] x ( [Premittigation DtPS] x [Reduce Incoming Damage] - [Absorb Shield Per Second] )





Note: Mitigation is run once with relic, once without and the result is the relic uptime weighted average between the two.



[Mitigation]

= [MRKE %] x ( 1 - [M/R Debuff] ) x (1 - ( [Defense Chance] - [Basic Attack %] x 0.1 - [Debuff Accuracy] ) ) x (1 - [Shield Chance] x [Absorb %] ) x ( 1 - [Damage Reduction] )

+ [FTKE %] x (1 - [Debuff Force/Tech] ) x ( 1 - [Resist] ) x (1 - [Shield Chance] x [Absorb %] ) x ( 1 - [Damage Reduction] )

+ [FTIE %] x ( 1 - [Debuff Force/Tech] ) x ( 1 - [Resist] ) x ( 1 - [Internal Damage Reduction] )





[Absorb %] is calculated based on [Shield], [Defense], [Ability activation rate] and the bosses damage profile. This is calculated each time to find the Dark Ward | Kinetic Ward absorb contribution and for the Heat Blast | Energy Blast contribution. See



Currently Juggernauts have an artificially higher mitigation because I assume that their absorb sheilds generated from Force Scream don’t overwrite better shields and are used up on cooldown. This lower premittigation dtps makes the absorb shield look better than it actually is (flat value vs percentage).



Tank Relic Ranking: (based on Mitigation) Reactive Warding Shrouded Crusader Shield Amplification Fortunate Redoubt Serendipitous Assault (*used for Health, can also use crafted relics)



KBN Stats:

Dipstik Stats:

All I did was attempt to implement the known calculations for Tanks from KeyBoardNinja and Dipstik and credit should go to them.(Also If you really care about Mitigation, you shouldn’t be listening to be and instead go look at their work)[DtPS] = [Mitigation] x ( [Premittigation DtPS] x [Reduce Incoming Damage] - [Absorb Shield Per Second] )Note: Mitigation is run once with relic, once without and the result is the relic uptime weighted average between the two.[Mitigation]= [MRKE %] x ( 1 - [M/R Debuff] ) x (1 - ( [Defense Chance] - [Basic Attack %] x 0.1 - [Debuff Accuracy] ) ) x (1 - [Shield Chance] x [Absorb %] ) x ( 1 - [Damage Reduction] )+ [FTKE %] x (1 - [Debuff Force/Tech] ) x ( 1 - [Resist] ) x (1 - [Shield Chance] x [Absorb %] ) x ( 1 - [Damage Reduction] )+ [FTIE %] x ( 1 - [Debuff Force/Tech] ) x ( 1 - [Resist] ) x ( 1 - [Internal Damage Reduction] )[Absorb %] is calculated based on [Shield], [Defense], [Ability activation rate] and the bosses damage profile. This is calculated each time to find the Dark Ward | Kinetic Ward absorb contribution and for the Heat Blast | Energy Blast contribution. See here for the code I am using for Dark Ward | Kinetic Ward.Currently Juggernauts have an artificially higher mitigation because I assume that their absorb sheilds generated from Force Scream don’t overwrite better shields and are used up on cooldown. This lower premittigation dtps makes the absorb shield look better than it actually is (flat value vs percentage).Tank Relic Ranking: (based on Mitigation)KBN Stats: http://www.swtor.com/community/showthread.php?t=804989 Dipstik Stats: http://www.swtor.com/community/showthread.php?t=842859





Optimization Assumptions:

Spoiler

To solve for the optimal stats many assumptions had to be made. The following is a list of all of the assumptions that I can remember making. Please remember that these results are from a mathematical model, not a simulation or a parse.

All DPS are attacking the Operations Target Dummy who have an arbitrarily large but finite amount of health. This is done to allow time averages to be valid because of the extreme time length.

Operations Target Dummy has an initial damage reduction goal of 40.50% and has its Armor value set from that and the Character Level (Estimated 11980 at level 70).

All Debuffs are applied to the target at all times. These debuffs act like player debuffs not the behavior of the target dummy debuffs

All classes have Utilities chosen that would maximize their damage or would be taken under normal conditions.

Healers are healing 3 targets that are taking constant, consistent damage.

No overhealing occurs nor does any target need more than any other

Healing targets have all healer buffs applied.

Tanks are constantly being hit by damage that exactly matches the input profile.

Tanks have all 3 healer buffs applied.

Tanks have all 3 damage debuffs applied to incomming damage

This damage profile allows the calculation of the shield rate which is the trigger for Dark Ward | Kinetic Ward and Heat Blast | Energy Blast

Current Damage profile is the Average Damage Profile. Other damage profiles are available based on community research.

No tank DCDs are used unless they are rotational or have a short cooldown. (example: Dark Ward and Force Speed)

Mitigation is time averaged. Total Reduction % is the output for tanks.

All Class (Legacy) Buffs are active and show up in the outputs. (5% Mastery, 5% Crit Chance, 5% Endurance, 5% Bonus Damages)

There is no Server-Client lag.

Alacrity works as Advertised.

DPS and Healers use Focused Retribution and Serendipitous Assault relics.

Focused Retribution’s 20s ICD is reduced by Alacrity. Serendipitous Assault’s ICD is NOT reduced by Alacrity.

Tanks by default use Reactive Warding and Shield Amplification.

Tanks that use a DPS relic replace the Shield Amplification with a Serendipitous Assault Relic.

There is no 5.0 use of B-mods due to availability. If they exist, they can replace the default Mods with minimal loss of average mitigation

Top Tier Stims are active.

Tanks use Fortitude Stims. Healers use Versatile Stims. DPS can use either Versatile or Proficient Stims.

NO adrenals are used.

When optimizing for an Item level, ALL Armorings/Mods/Enhancements etc. are of that item level.

All Disciplines use the current 6 set bonus.

The DPS two piece set bonus is set have a 50% uptime. This is because of program limitations that require buffs to be quantized before Alacrity is calculated.

Mastery Augments are the default augment choice to be compared against when determining optimal augments. Mastery was chosen above Power because it provides a tiny (less than 0.01%) amount more dps.

Accuracy stat goal is now 737 which adds 9% to accuracy yielding 110% Accuracy. Since exactly 737 is hard to reach using discrete augments and enhancements, the accuracy used was the combination of gear that combined to the closest value that was still greater than 715 (+8.83%).

All stated combinations are possible to reach only using Best in Slot gear from that Tier.

All DPS and Healers use Unlettered Lethal Mods and Versatile Armorings.

All Tanks use Resistive Armorings and Warding Mods.

All Disciplines use the low Endurance Enhancements.

All valid equipment combinations are iterated through during the testing process by use of the DPS calculation.

All aspects of the DPS calculation are based off of time averages for both ability usage and for buff uptime.

Proc Rate limited effects are assumed to trigger at exactly the mathematical average expected proc rate.

Ability Usage is time averaged based off of rotations and cooldowns.

Every class has at least one ability they will use as a filler in order to never waste a GCD, this ability has a time averaged usage of the remaining time.

Ability Usage is separated into Normal Usage and Execute Usage.

Damage Bonuses are additive, this means that any Bonus Damage and Buff based Damage Bonuses are added together.

Some abilities have damage multipliers that are not additive. This is used to handle dot/debuff stacking.

AOE 10% debuff is multiplicative, all other debuffs are additive.

Execute damage bonuses are multiplicative.

Alacrity bonuses are time averaged to equally apply at all times to all abilities for a small amount.

All Alacrity is assumed to be invariant so that it cannot misalign ICDs and CDs. (Variable Alacrity causes misalignment, static Alacrity bonuses should not cause misalignment).

The number of hits for each ability is based on the base number of hits and then modified by the usage of other abilities and for healers, the number of targets. (For example in Virulence | Dirty Fighting, each usage of Cull | Wounding Shot adds 4 additional ticks to each of the dots)

Abilities that refresh dots cause the dots to stop and then begin again from the beginning of the dot. To simulate this, refreshed dots have a single tick and a short usage rate based on the tick rate and the refresh rate.

All offensive and energy regen cooldowns are used on cooldown to try and maximize DPS.

Energy/Force/Heat Regen is assumed to be at the maximum rate at all times. This was done as part of my sanity checking steps for evaluating a rotation. This is not used in the calculation steps, only for checking rotations.

The sum of Energy/Force/Heat costs divided by the time averaged usage of all abilities should be 0 or less after all resource regeneration abilities are applied. For Crit based regen, the Crit rate is assumed to be 30%, which is on the conservative side for the current values of Critical.

All Disciplines are trying to maximize their output by using energy cooldowns ASAP.

The sum of the ability usages per second must be equal to 1 ability per GCD (abilities that are longer than a GCD use more than 1 GCD).

Standard Health Percent Min and Max are averaged for determining ability damage.

Weapon damage Min and Max are averaged for determining ability damage.

Multihit abilities with differing hit values such as Ravage | Blade Dance have their coefficients averaged out across the number of hits.

Autocrit effects are time averaged by dividing the CD of the autocrit effect by the ability usage rate.

Super Crit! is averaged in by modifying the Critical Damage calculation.

Average ability Damage is determined by combining normal damage with the Crit chance with the Super Crit Chance. [Normal damage]*(1 + ( [Crit Chance%] + [Autocrit CD] / [Usage] ) * [Critical Multiplier%] )]

Individual ability DPS is determined by finding the average expected damage per ability activation and dividing this result by the Alacrity modified usage rate.

The sum of all ability DPS is the total DPS output of the Discipline.

APM is calculated as the sum of ability activations divided by their usage rate. This only counts rotational critical abilities and not defensive cooldowns or fluff abilities.

Calculations are done using the Imperial Disciplines and classes.

Republic Classes yield near identical results. Minor differences only occur when comparing dual wielding versus single weapon mirrors.

It can be assumed that I forgot some or most of the assumptions. To solve for the optimal stats many assumptions had to be made. The following is a list of all of the assumptions that I can remember making.





Gearing Sources:

Spoiler

These are the sources for all of the stats that are shown including all of the class buffs and Anodyne Stims.





Endurance: 9* x Armoring (Hilt = Barrel = Armoring) (*Tanks use alternate version)

9 x Unlettered Mod

7 x Enhancement

2 x Implant

1 x Earpiece

2* x Relic *(DPS and Healers only)

14* x Augments (*DPS and Healers only)

1* x Fortitude Stim (*Tank only)

2* x Indestructible Crystal (*Tank only)

1 x Base Endurance + Datacrons

x [1.05 + N] (Class Legacy Buff) + (Discipline Buff, e.g. Assassins)



Mastery: 9* x Armoring (Hilt = Barrel = Armoring) (*Tanks use alternate)

9 x Unlettered Mod

2 x Implant

1 x Earpiece

2* x Relic (*Tank only)

1* x Polybiotic Versatile Stim (*DPS and Healers only)

1 x Base Mastery

1 x Datacrons

x [1.05] (Class Legacy Buff)



Power / Defense (“Secondary”) 9 x Unlettered Mod

7 x Enhancement

2 x Implant

1 x Earpiece

2 x Relic

1 x Versatile and Fortitude Stims

14* x Augments (*Tanks, Power only)



Alacrity / Critical / Accuracy / Absorb / Shield (“Tertiary”) 7 x Enhancement

2 x Implant

1 x Earpiece

2 x Relic (*Critical or Shield only)

1 x Proficient Stim (*DPS only, Critical only)

1 x Proficient Stim (*DPS only, Accuracy only)



Multiple Categories 2* x [41] Critical, Mastery or Power Crystal (*DPS and Healers only)

14 x Augments for any Stat These are the sources for all of the stats that are shown including all of the class buffs and Anodyne Stims.Endurance:Mastery:Power / Defense (“Secondary”)Alacrity / Critical / Accuracy / Absorb / Shield (“Tertiary”)Multiple Categories





Standard Error:

Spoiler

The Standard Error included is based on determining the standard deviation for each individual ability’s DPS and combining it with the number of expected hits on a 1.5M HP target.





This method is only applied after the optimized gear level is found due to the fact that generating the number of results takes a large number of computations and doesn’t modify the average.





The method used to determine Standard Error only accounts for the following Sources of error: Relic Uptime (No Relic | Relic A | Relic B | Relics A+B)

Critical Hits (Doesn’t Crit | Normal Critical Hit | Autocrit)

Damage Spread (Uses Weapon Min and Max, Standard Health Min and Max: 0%, 25%, 50%, 75%, & 100%)

Execute Damage vs Non-Execute Damage (70%/30% split on HP, time split based on separate DPS values)

Offhand Hit and Main Hand Hit (Calculated separately) However, this method continues to average all bonuses not stated above and assumes they don’t have any spread (this is due to limitations in my current spreadsheet implementation). Also, the relics themselves are given discrete probability values for their active duration rather than including them twice as a source of error. This further reduces the accuracy of the standard error given.





Because these are the only sources used, the following Classes have an even larger damage spread than what is listed due to additional RNG sources: Marauder - Annihilation || Sentinel - Watchman - Critical Hits provide Resources and therefore Rotation changes based on RNG. In addition, Dots have a chance to provide resources and therefore Rotation changes based on RNG.

|| - Critical Hits provide Resources and therefore Rotation changes based on RNG. In addition, Dots have a chance to provide resources and therefore Rotation changes based on RNG. Marauder - Carnage || Sentinel - Combat - Ataru Form provides an additional source of RNG.

|| - Ataru Form provides an additional source of RNG. Assassin - Deception || Shadow - Infiltration - Surging Charge Procs directly affect the rotation and thus are a source of Additional RNG

|| - Surging Charge Procs directly affect the rotation and thus are a source of Additional RNG Sorcerer - Lightning || Sage - Telekinetics - Forked Lightning and Forked Darkness Procs add additional RNG and affects the rotation in regards to Polarity Shift..

|| - Forked Lightning and Forked Darkness Procs add additional RNG and affects the rotation in regards to Polarity Shift.. Sniper - Virulence || Gunslinger - Dirty Fighting - Energy Regen is based on Critical Hits and therefore Rotation changes drastically based on RNG. In addition, there is additional sources of RNG for double Ticks on the two dots.

|| - Energy Regen is based on Critical Hits and therefore Rotation changes drastically based on RNG. In addition, there is additional sources of RNG for double Ticks on the two dots. Operative - Lethality || Scoundrel - Ruffian - Energy Regen is based on Critical Hits and therefore Rotation changes based on RNG. In addition, there is additional sources of RNG for double Ticks on the two dots.



The method used does the following steps: Generates Expected Damage for each Ability based on the Sources [D_n] Generates Probability that that amount of Damage for each Ability based on the Sources [P_n] Find the Average Damage for each Ability [Average = sum(D_n*P_n) ] Find the Standard Deviation for each Ability [SD_hit = sqrt( sum(P_n * ( Average - D_n )^2 ) ) ] Find the Standard Deviation for each Ability’s DPS [SD = SD_hit / ( Usage ) ] Find the Number of hits for each Ability [Hits = ( # of hits per use ) * ( HP/DPS ) / (Usage)] Find the Standard Error for Individual Ability [SE = SD / sqrt(Hits) ] Find the Standard Error for the Discipline [Total SE = sqrt( sum( ( SE )^2 ) ) ]







This Standard Error should give a damage range that 95% of the results of a perfect rotation will fall within if all other factors are held equal (i.e. all of the assumptions that were given in the assumption section except in regards to damage averages)





The Standard Error included is based on determining the standard deviation for each individual ability’s DPS and combining it with the number of expected hits on a 1.5M HP target.This method is only applied after the optimized gear level is found due to the fact that generating the number of results takes a large number of computations and doesn’t modify the average.The method used to determine Standard Error only accounts for the following Sources of error:However, this method continues to average all bonuses not stated above and assumes they don’t have any spread (this is due to limitations in my current spreadsheet implementation). Also, the relics themselves are given discrete probability values for their active duration rather than including them twice as a source of error. This further reduces the accuracy of the standard error given.Because these are the only sources used, the following Classes have an even larger damage spread than what is listed due to additional RNG sources:The method used does the following steps:This Standard Error should give a damage range that 95% of the results of a perfect rotation will fall within if all other factors are held equal (i.e. all of the assumptions that were given in the assumption section except in regards to damage averages) The goal is to find the set of Character Stats that would yield the best expected DPS/HPS/DtPS for any given Stat budget. To accomplish this, a method was utilized to accurately and repeatedly calculate the expected DPS/HPS/DtPS for each of the 24 Disciplines on a time averaged basis. With this method it becomes possible to iterate through all of the stat combinations in order to find the stat combination that would yield the best result. This approach focuses on PVE single target, Operations Target dummy encounters for the DPS, Average Boss Damage Profile for Tanks and a 3 target approach for Healers.Previous Changes:In 4.0, Knights of the Fallen Empire arrived and with the focus on story comes with a whole host of behind the scenes changes that affect the gearing meta. There are many new tiers of gear, a level increase of 5 levels, new passives for every discipline, stat consolidations, changes to existing Stats of Critical and Accuracy and the introduction of Super Crit.5.0 brought RNG gearing. I am not a fan of it, but my enthusiasm for SWTOR has been dropping for a while.The method I used to find the optimal gearing was to build a mathematical model that incorporated as many variables as I could find that defines the combat in Star Wars The Old Republic. This mathematical model was used to test various gear combinations and the result that had the highest average DPS was returned as the optimal value.I am not infallible and all dps, hps and dtps numbers here should therefore be taken with a grain of salt because of this. I do try to continuously learn and improve so the numbers in this post will change with new information and corrections.Another reminder is that it is next to impossible to spot any differences between specs that are within ~100-200 rating of the optimal setup, so don’t feel forced to take exactly these numbers. Most of the time, the model’s results for the different stat setups are within a few dps of the top result. Use your own judgement to match your playstyle.. Bant The Fat and Pink.



Co-GM of Psy-Ops on The Harbinger