Popular Guides

SimulationCraft - How to Sim your Character

Introduction

This guide will aim to give players all the information they need to get SimulationCraft up and running and use it to get simulation results for their own World of Warcraft character. The website describes the program as:

SimulationCraft Overview

SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).

It is a multi-player event driven simulator written in C++ that models player character damage-per-second in various raiding scenarios.

Increasing class synergy and the prevalence of proc-based combat modifiers have eroded the accuracy of traditional calculators that rely upon closed-form approximations to model very complex mechanics. The goal of this simulator is to close the accuracy gap while maintaining a performance level high enough to calculate relative stat weights to aid gear selection.

These, of course, correspond to MacOS and Windows operating systems so download the file that applies to you.

Before leaving the website be sure to bookmark it. This guide will try to get you used to importing your character and running sims but the program is incredibly powerful and once you've got the basics the site has an extensive wiki which can help you with some of the complexities.

Next, unpack the file into a folder of your choice (SC does not need installing, it's stand-alone, you just unpack it) and run the file called SimulationCraft.exe - you can make a shortcut to this file if you like, you generally won't need to go into that folder again until you're getting into the more complex possibilities of the program.

Options

When you first run the program you'll be presented with a nice Welcome page with some good information on the main features. You will also see several tabs across the top of the screen. The order of these tabs actually leads you quite nicely through using the program and so we'll start with the options tab.

The options tab gives access to several more tabs containing the various settings for the program. By default, options for scaling and plots (some of the most useful features of SC, are turned off so these options give you access to some of the fantastic things SC can do for you.

In the tabs below I'll cover the most important ones.

Suggested/Important options

Version - live

Iterations - 10,000

Vary Length - 20%

Explanation of Options (click to hide):

VersionLet's you choose which game version SimulationCraft uses. This option is only useful during times when Blizzard is testing a new patch and you should be aware that SC will be getting updates very often during this time meaning that the PTR option should be considered beta.

IterationsSC gets its information by running a mock-up of a real encounter inside the computer. Just like encounters in-game you can sometimes get a run of crits or misses that skew your results. SC gets around this by running the simulation lots of times and averaging the results. 1,000 iterations is fine for rough numbers.

10,000 will generally give enough precision for stat weights.

25,000 and 50,000 are incredibly precise but also take a lot of computing which results in taking a long time to complete.

World LagSimulates latencyLength (sec)Sets the length of the simulated fights in seconds.Vary LengthIf you Simulate every iteration with exactly the same length you can create anomalies where certain trinkets might look better than they really or some cooldowns look worse. Varying the fight length helps smooth out these issues.Fight StyleThe two options here are Patchwerk or Helter Skelter. Patchwerk is a boss in Naxxramas whose name has become synonymous with fights that expect no movement from DPSers, allowing them to concentrate completely on their rotations. A helter skelter simulation is one where damage is prevent periodically to simulate fights where you are forced to move or are otherwise unable to do damage.Patchwerk sims don't closely model many actual fights but they do give a good baseline for things like stat weights and makes a good default.Target LevelThere are options for Heroic 5man and Normal 5man bosses if you are specifically gearing for those lower hit caps but the default Raid Boss should be used unless you have a specific reason to do otherwiseTarget RaceThere are some bonuses against certain type of opponent in the game (Like Paladins' Exorcism against Demons or Undead and Trolls' Beast Slaying against beasts). Humanoid will give fewer of these oddities.Player SkillThis option provides a way to model player mistakes by giving different levels of random chance that the correct skill will be missed in favour of the next one on the list. This has some uses but sims are generally used to show optimums so leaving this as 'elite' will generally be best.ThreadsThis can be set to the number of (soft) cores of your CPU in order to decrease the time it takes to run your simulation. If you are at all unsure the leaving this setting as '1' will be best as there are some drawback to using more threads even with multicore CPUs.Armory Region - US/EU/TW/CN/KRThis makes browsing for characters in the armory easierArmory SpecChooses between importing the spec the character logged out with or their currently inactive spec.

These tabs let you tick the buffs and debuffs that your character and their opponent should have for the Sim. You can generally use the 'Toggle all buffs/debuffs' option to switch them all on but if your raid regularly misses one or more of the buffs listed then you can run a Sim with and without it to get an idea of what you're losing.

MMO-Champion's Raid Composition Tool can be very useful for finding out what buffs and debuffs your raid group has or is missing.

Buffs

Toggle all buffs

Dark Intent

Focus Magic

Agility and Strength

Attack Power (%)

Bloodlust/Heroism

All Damage

Intellect

Critical Strike

Mana Regen

Melee and Ranged Haste

Replenishment

Spell Haste

Spell Power

Stamina

Stat Multiplier

Debuffs

Toggle all debuffs

Armour Reduction

Boss Attack speed

Bleed damage

Bleeding

Physical damage

Poisoned

Ranged Attack Power

Spell Critical Strike

Spell Damage

Checking boxes in this tab gets SC to do extra simulations in which it tests how much difference adding a point of a stat makes to your overall DPS. It is this tab that will provide you with Stat Weights.

The difference can be very small so it is important to run 10,000+ iteration tests on scaling sims to get the accuracy you need. However, high iteration sims take a long time and, as such, I would suggest only ticking the boxes that are important for your character.

The option 'Use positive Deltas only' refers to the way SC looks at cappable stats like Hit Rating. There's a good chance that you will be simming a character that has fully capped that stat but you still want to know what it's worth. SC finds this out by taking away a point of the stat in the sim instead of adding one and the resulting loss gives the value for the stat. This option forces SC to only add a point of the stat for scaling which would show a very low (or zero) value for a capped stat. It defaults to unchecked and can safely stay that way unless you have reason to use it.

Analyse all stats

Scaling set up for my Warlock

Use positive deltas only

Analyse Strength

Analyse Agility

Analyse Stamina

Analyse Intellect

Analyse Spirit

Analyse Spell Power

Analyse Attack power

Analyse Expertise Rating

Analyse Hit Rating

Analyse Crit Rating

Analyse Haste Rating

Analyse Mastery rating

Analyse Weapon DPS

Analyse Weapon Speed

Analyse Off-Hand Weapon DPS

Analyse Off-Hand Weapon Speed

Similar to scaling, 'Plots' allow you to get a graph showing DPS on the vertical axis and increasing values for the chosen stats on the horizontal axis. This can be very useful for finding things like soft caps in stats where the gain from adding more plateaus out at certain points. These options can also add a lot to the time it takes to run your simulation so only tick plots that you are particularly interested in.

Plot DPS per Strength

Plot to check for Haste Plateaus

Plot DPS per Agility

Plot DPS per Stamina

Plot DPS per Intellect

Plot DPS per Spirit

Plot DPS per Spell Power

Plot DPS per Attack Power

Plot DPS per Expertise Rating

Plot DPS per Hit Rating

Plot DPS per Crit Rating

Plot DPS per Haste Rating

Plot DPS per Mastery Rating

Plot DPS per Weapon DPS

Reforge plots allow you to see the interactions between stats, giving an idea of what would happen if you lost one stat but gained another. You must choose two or three options for reforge plots but be warned that choosing three will greatly increase simulation time.

BiS - SC has a list of in-built characters in Best-In-Slot gear ready for you to use

History - SC keep track of the characters you've simmed so you can pull them up again easily

Armory

With the option > set to your own region, finding your character is as simple as clicking the tab and typing your character's name into the search box in the top right. Once you've found your character you should be looking at a page like in the picture to the right with and address like:

Now you can click in the bottom right of the application and go to the next stage!

CharDev

With CharDev you can make a complete character from scratch including all gear, gems, glyphs, enchants and talents. Alternatively you can import a character that already exists and change a few things like maybe checking to see how big an upgrade that BoE trinket is before you spend 30k gold on it ^_^

You can use CharDev from inside SimulationCraft or you can use it in your regular browser and copy/paste the address in later.

The important thing to remember with CharDev that trips up a lot of users is that after making your customised character you need to save it. To do this you'll need to create an account with the site but once you've done this you can click save and you should end up with a link like:

http://chardev.org/?profile=######

If you're working in your own browser then you can paste this link into SC's address bar and if you're working directly in the SC import window you can now click and go to the next stage!

Rawr

Rawr is a lot like SimulationCraft in many ways except that Rawr uses formulation to get its results. One thing Rawr is very good for is gear optimisation and so SC gives the option to use Rawr to find out the best gearset and then import it into SC for simulation. You can download the program here

Once you've unpacked and run Rawr you can import your character from the armory and make any changes you wish. Once you're done go to file and chose 'Save character file'. You will be prompted to give a directory and a name for the save.

Once saved you can go to SC and to the Rawr tab and click the button marked . Browse to the file you saved, click and then you can click !

Simulate

This bit looks quite complex but SC has done the work of setting up the sim automatically. This is the area in which you can make edits to test specific things but if you simply hit the button in the bottom right of the screen, that will start the simulation running.

Below is an explanation of the page you're faced with after hitting import. If you're just interested in getting a sim running then feel free to click the toggler to hide that section and move on to the results.

A "brief" explanation of the Actionlist

At the top you have some general information:warlock=Shuyaorigin="http://eu.battle.net/wow/en/character/eonar/Shuya/advanced"level=85race=gnomerole=spelluse_pre_potion=1professions=Enchanting=525/Tailoring=525talents=http://www.wowhead.com/talent#warlock-22322200301332132103000000000000000003300000000000000000glyphs=haunt/corruption/imp/life_tap/soul_link/soul_swap/drain_soul/eye_of_kilrogg/unending_breath

This is mostly self-explanatory, it shows your professions, your race, your Glyphs and it also has a link to your Talent Spec and this is worth mentioning.

If you wanted to test the effects of some different talent choices you could do this by making several different profiles in CharDev or Rawr and importing them or you can simply make up the new Talent Spec on Wowhead and paste the URL for the new spec directly into that line. Glyphs work similarly, you can just make an alteration to this actionlist before hitting simulate and that's what the program will run.

actions=flask,type=draconic_mindactions+=/food,type=seafood_magnifique_feastactions+=/fel_armoractions+=/summon_impactions+=/dark_intentactions+=/soulburn,if=!in_combatactions+=/snapshot_statsactions+=/use_item,name=moonwell_chaliceactions+=/volcanic_potion,if=buff.bloodlust.react|!in_combat|target.health_pct<=20actions+=/demon_soulactions+=/corruption,if=(!ticking|remains<tick_time)&miss_reactactions+=/unstable_affliction,if=(!ticking|remains<(cast_time+tick_time))&target.time_to_die>=5&miss_reactactions+=/bane_of_doom,if=target.time_to_die>15&!ticking&miss_reactactions+=/hauntactions+=/summon_doomguard,if=time>10actions+=/drain_soul,interrupt=1,if=target.health_pct<=25actions+=/shadowflameactions+=/life_tap,mana_percentage<=35actions+=/soulburn,if=buff.demon_soul_felhunter.downactions+=/soul_fire,if=buff.soulburn.upactions+=/shadow_boltactions+=/life_tap,moving=1,if=mana_pct<80&mana_pct<target.health_pctactions+=/fel_flame,moving=1actions+=/life_tapNext comes the main actionlist. This is the most important part of this stage as it defines the priority order of all the abilities used by your character. However it's also fair to say that it's the most complex and difficult area to grasp.

The Devs and contributing users of SC spend an awful lot of time honing the perfect actionlists for the various specs and classes so unless you're trying to test something specific (for example I might want to see what happens if I use Incinerate as my filler instead of Shadow Bolt as a Warlock) it's absolutely fine to leave this section untouched.

The main thing to understand is that SC will go down the list until it finds an action that it can execute. It will then carry out that action and go back to the top of the list and start checking again. Most important things are at the top, least important things are at the bottom.

The bottom section is all about your gear. First it lists each item along with its stats, gems and enchants. It also shows details for trinket procs.

Below those lines is a summary of the stats. This information is not directly simmed - the #s mark those lines as comments.

Making Changes

Once you're comfortable with SC you will no doubt want to make some of your own alterations to test the effect on your character's DPS. I'll cover a couple of the most common alterations here and then there's SumulationCraft's extensive Wiki for more advanced stuff.Tier Bonusestier12_2pc_caster|melee|tank=1tier12_4pc_caster|melee|tank=1If you wanted to force the inclusion or exclusion of tier bonuses irrespective of the actual tier items your character has equipped you can use these lines at the end of the actionlist. Setting them to 1 turns the bonus on while setting them to 0 turns them off. You would choose caster, melee or tank depending on your character's role.Note that turning on the 4piece bonus does not automatically turn on the 2piece.

Changing Gear

The list of items making up your gear set is quite a densely packed bit of text but once you take a look at each item it's actually fairly simple to see how you could make changes to test various things.

For example if I took the line:waist=embereye_belt,type=cloth,ilevel=378,quality=epic,stats=782armor_282int_454sta_208crit_172haste,gems=20int_20hit_40int_10intand changed it to:waist=embereye_belt,type=cloth,ilevel=378,quality=epic,stats=782armor_382int_454sta_208crit_172haste,gems=20int_20hit_40int_10intI would be effectively simming my character with a +100Int buff.

Alternatively I could take the line:hands=shadowflame_handwraps,type=cloth ,reforge=mastery_haste,gems=40int,enchant=50hasteand change the enchant on it:hands=shadowflame_handwraps,type=cloth ,reforge=mastery_haste,gems=40int,enchant=50Masteryor change the reforging:hands=shadowflame_handwraps,type=cloth ,reforge=mastery_hit,gems=40int,enchant=50hasteAnd I can do all this without needing to use a character planner like CharDev.

Results

Once your Simulation has completed you will be presented with a page that is very densely packed with information. Let's break things down a bit and look at some of the most useful things SC has found for you.These examples are taken from a 1,000 iteration Sim of a T12 BiS Affliction Warlock.

General info about what was tested and the most important results.

DPS(e) - Effective DPS, just like on a World of Logs report this is the damage over the total encounter length rather than the character's active time. This will be significantly different to DPS on a helter skelter Sim.

DPR, RPS In, RPS Out - Damage per Resource (mana, energy, rage or focus), Resource per Second gained and spent.

APM - Actions per Minute.

Scale factors (sometimes called Stat Weights or Equivalence Points)

This is probably going to be the most important panel for most people using SC. It tells you what stats are worth for your own character which is incredibly useful when your alternative is to use some general data based on a completely different gear set.

You can use these values in in-game addons or just as a reference for yourself when gearing, gemming or reforging.

an excellent feature is that SC provides links to common item databases (most notably Wowhead) with those values inserted and ready to go. The Wowhead link takes you to a page like this.

If you don't see this very useful table of information you may have missed the section in the Options about Scaling!

Also, you'll notice that if you run a Sim with less than 10,000 iterations the results page warns you that your stat weights may be inaccurate.

DPET Bar Graph

This chart shows your abilities listed in order of their Damage per Execute Time.

DPET gives a way to express how much damage an ability does for the time you spend casting/executing it (how much bang for your buck)

This chart will help you work out your character's spell/ability priorities as, even though an ability might not do more of your overall damage, if it's a better way to spend a GCD then it's a more important ability to use.

Damage Sources

How much of your total damage do abilities do?

Stat Weights

A nice visual chart to show Stat Values.

The red sections show the margin for error. Higher iteration Sims reduce these.

Stat Scaling

In this case this is the scaling for Haste showing values for plus and minus 200 Haste Rating.

Note that this isn't a perfectly smooth curve or linear increase.

Various abilities/talents can cause small or even quite pronounced plateaus in a stat's value.

This can be important and inform your gearing if you're just, for example, 50 points away from a relatively large increase or if you're at a point where you could lose 30 rating without dropping in DPS.

Two-way Reforge plots

Shows the DPS resulting from a reforge from one stat to another.

The example to the right compares Mastery to Haste

Each dot represents a shift of 20 rating from one to the other

Again, note that this is a far from linear graph

Three-way Reforge Plots

Shows reforge interaction between three stats

Red is higher DPS. Blue is lower DPS.

This chart was the result of a very low iteration (100) sim for the sake of speed. The more iterations you use, the smoother the colour change in the chart.

The rest of the Report covers:

All abilities including those of pets in a way that is very similar to World of Logs (or other sites/addons that analyse combat log data)

Buff uptimes

Procs

Gear Weights - This toggler contains copy/pastable strings to use with Pawn and RhadaTip.

The section headed "Fluffy_Pillow: 0 DPS" can be ignored. Because SC runs simulations it needs to have another character in there to play the part of the boss. This gives you a hint of an idea of some of the larger possibilities of the program for modelling lots of different characters at the same time including buff interactions.

Conclusion

I hope this has given you the basics of how to get SimulationCraft up and running and a basic grasp of how some of the results can be useful to you. If you have any questions or have been through the process of using SimulationCraft and stumbled on something I haven't explained (or haven't explained clearly enough) then please let me know.

If you found this guide useful then please give it a rating at the top of the page

Comments

Comment by asakawa

I've done my best to proof read this but I'm 100% certain I've missed lots of silly mistakes still, so please feel free to mention even the smallest of errors or inconsistencies ^_^

Also, of course, any content suggestions would be welcomed.(##RESPBREAK##)8##DELIM##asakawa##DELIM##

Comment by Rekijan

The only issue I had was I didn't go through all the tabs, as I am not really used to them, and because of that I was wondering why stuff like haste scaling and other plots weren't showing for me.

Comment by Kruga

Very nice guide, never knew it was this easy. But I can't get it to load my character from the armory, it just gives me the message "Unable to get profile info for character eu|draenor|Kruga from the Armory"

Comment by Kozilek

Awesome tool here. Just started to use it on my DPS alt (destro warlock), this guide made it a lot easier to comprehend. I was wondering, my main is a prot warrior, is it reliable as DPS meter for that char too? Not that it is really important, but it would be a measure of damage capablilities.I wish it could be adapted to be a sort of threat simulator too, but I guess that's beyond what is reasonable to expect. Threat for me remains a hard beast to tackle. Thanks a lot.

Comment by asakawa

Here's what SimulationCraft says about tanking:

Tanking: currently, you can be put in the front of the target and have it hit you and do damages to you but, aside from rage generation and damage-based procs, it's pretty useless. Simulationcraft will only display your dps, not your tps (threat per second) and there is absolutely no data regarding mitigation. There is no aggro support also.

So it currently can't model the really important things for tanking but it can model Prot-specced DPS rotations and, since threat is so closely tied to damage (except for occasional abilities that "cause a high amount of threat"), it may be able to help you fine-tune some your DPS rotations a bit.

Comment by AWildmann

The guide is great Asakawa! I'll be sure to try it maybe tonight.

Comment by Darkicon

Wow. This is an amazingly written guide!

Comment by asakawa

Thank you both, very kind.

Comment by asakawa

I'd heard there may have been some issues for some people viewing the google charts images so I've replaced them with regular images instead of the google API ones. Apologies to anyone who had been unable to see some of the "results" section.

Comment by Wormag

I don't even know what this is but it looks good, haha.

Comment by EpicJimbo

Up until this point, I was unsure what SimulationCraft was. Thank you for the very detailed explanation, I'm going to attempt to give it a shot!

Comment by therailz

Thanks for putting up this nice and thorough guide. I use Simulation craft when I have to make important gear choices and its nice to know there is a handy, in-depth guide right here on my favorite site, just in case I need help understanding some of the more complex aspects of the program.

Comment by jabarri1

Great guide! I've been using SC for quite a long time now, and this would've been very helpful when I first started using it. :)

Comment by Drathellia

Wow... u have no life, its a game, why do people think it matters how good u r in it that they would make guides like this ROFL.

Comment by unholly

one question: can this tool be used for simulating arena scenarios versus different comps?

Comment by Chakra

This is an excellent guide and you can still read it and apply to the latest release of SimCraft as of 2013-01-01.

Comment by Argentus

Great Guide!

But, .... not the guide, not the idea of simulating things just to see "what gives", not reforging, but ...

How to escape the reforge loop?

If you make a simulation, obtain the results, use the link in the results to one of the reforge sites provided, apply their advice to your toon (gems, enchants and reforges) you would presume that your character would be "optimal" until something is changed, wouldn't you?

Regrettably if you run a new simulation (not changing anything, with exactly the same options as in the previous simulation) over your now "optimal" toon, surprise; you will have new values that used in the reforge site/tool will lead to a new and not slightly, but completely different advice (new gems, enchants and reforges).

This can go on endlessly!

What am I missing?

Comment by Rhalkin

I'm currently trying to sim my dk to see if I should use the 2hd weapon and chest upgrade I received out if flex. I am currently dual wielding 2 536 1 handers. But before I re-gem and reforge I wanted to test the dps difference. I have yet to be able to change my gems and reforges using chardev.... Is there another way?