Skip to content
This repository has been archived by the owner on Aug 25, 2020. It is now read-only.

Features.wiki

Serge Camille edited this page Aug 24, 2015 · 1 revision

What is it?

SimulationCraft-SWTOR is a free and open-source simulation (see FormulationVsSimulation) of Star Wars: The Old Republic combat mechanics: it can simulate a fight with one or many players fighting one or many targets and produce detailed informations. It is usable either from a graphical user interface or from a command-line client (typically through configuration files).

Since Simulationcraft is a simulation, it will never give you the same numbers (the rng matters!): they will always vary but should remain close to the exact values you can observe in game (precision can be controlled and increased at the expense of computations times). You may also face intensive computations times and memory needs in some circumstances. Finally, at its core it was a command-line tool based on configurations files and the GUI was added lately and, while efficient, it is still rudimentary and dry.

However, because Simulationcraft is a simulation, it also has advantages over traditional, formulation-based, tools, such as spreadsheets or Rawr. Developing a formulation is like solving a vast and complex problem while developing is a simulation is like solving many simple problems. And it does matter for you, the end-user, especially in a world where tools are developed by a few benevolent people. Which ones? See below.

  • Reliability: "easy" to develop, easy to verify. And we never have to do mathematical approximations or to ignore some interactions: all mechanics and interactions are spontaneously and genuinely reproduced. Bugs may arise of course but they tend to be quickly spotted and easily fixed. The most carefully formulation-based tools can still reach the same accuracy level but, too often, you have no idea about the level of accuracy of your tools and which approximations they did: you're left with a black box and rely on trust. And since the source code of those tools is hard to understand and to verify, no one may be brave enough to investigate them.

  • Quickly updated: A simulation is easier to update: most of the times, you will be able to make simulations taking into account the changes made on the PTR long before they reach the live servers.

  • Features-rich and highly configurable: The nature of Simulationcraft allows us to provide rich informations and offer you a broader range of features, to let you change your rotations, to simulate fights the way you want, to synchronize your cooldowns with certain events, etc... Simulationcraft has tons of settings you can play with.

Rich reports

Simulationcraft can generate reports such as those displayed on simulationcraft.org). Most notable informations are:

  • Decomposition of the dps, such as tools like Recount or World of logs can provide.
  • Dps distribution: to understand how your dps can vary across fights because of the rng.
  • Resource gains: how much a talent or buff is important for your resources?
  • Dps timeline: to measure the importance of certain cooldowns.
  • Spells details: damage per resources, per execution time, minimum and maximum output, etc.
  • Buffs details: uptimes, real benefit, etc.
  • Etc...

http://www.simulationcraft.org/images/wiki/samplegraphs.png

Stats weighting to compare items

Simulationcraft can be used to compute scale factors: those are weights given to every stat so that one can compare them. The higher a scale factor, the better a stat!

Have your simulated avatar play the way you want

Do you want to test out another dps rotation? Check whether you should pop your cooldowns as soon as possible or try to synchronize them with bloodlust/heroism or a certain phase of the combat? You can do it, check out the documentation (see ActionLists). Here is a sample actions list:

 actions+=/slice_and_dice,if=buff.slice_and_dice.down&time<4
 actions+=/slice_and_dice,if=buff.slice_and_dice.remains<2&combo_points>=3
 actions+=/killing_spree,if=energy<20&buff.slice_and_dice.remains>5
 actions+=/rupture,if=!ticking&combo_points=5&target.time_to_die>10
 actions+=/eviscerate,if=combo_points=5&buff.slice_and_dice.remains>7&dot.rupture.remains>6
 actions+=/eviscerate,if=combo_points>=4&buff.slice_and_dice.remains>4&energy>40&dot.rupture.remains>5
 actions+=/eviscerate,if=combo_points=5&target.time_to_die<10
 actions+=/revealing_strike,if=combo_points=4&buff.slice_and_dice.remains>8
 actions+=/sinister_strike,if=combo_points<5
 actions+=/adrenaline_rush,if=energy<20

Simulate real conditions

Do most fights look like a tank's n spank? No. Sometimes there are adds spawning, sometimes you suffer heavy damages, sometimes the boss may take twice much more damages, sometimes he become invulnerable, sometimes you have to kick his incantation, sometimes you have to move, sometimes you are distracted by what's happening on your screen, etc... Simulationcraft can simulate that.

Besides, Simulationcraft offers you tools to simulate human behaviours: your players may have a high latency, they may have brain lag and take time to notice a spell miss or a new buff/debuff, they may do mistakes and hit the wrong button.

Internationalization

Simulationcraft is only available in English. However, it can work with all versions of the wow armory and battle.net websites (notably: Russian, Chinese, Korean and Taiwanese characters and guilds can be imported). If you use the command-line client, your files must be encoded as latin1 or utf-8, please take time to read TextualConfigurationInterface#Characters_encoding.

Limitations

At first, Simulationcraft was made for damage dealers, with just a dummy target. It evolved since then but there are still some limitations although we hope to see some of them be removed throughout the course of 2011.

  • Tanking: currently, you can be put in the front of the target and have it hit you and do damages to you but. Simulationcraft will not only display your dps, but also dtps, death count and time.

  • Healing: it has been recently introduced but is already pretty advanced.

  • Many targets: currently, you can have adds (either periodically spawning adds who will despawn after some time, or adds remaining for the whole fight, as long as the main target is alive). Those adds are mere dummy targets: their health pools do not matter, they do not hit anyone, etc... Besides, actions lists only have a limited support: you can choose spells based on the numbers of available target but there is no support for multi-dotting classes. Finally, only cleave-like spells work, not genuine aoe.

While Simulationcraft has support for all those features, it can be pretty hard to set up a healing, tank or aoe simulation. We hope to change that in the near feature, providing more default simplifications while retaining the full range of options.