Jump to content


Photo

BloodSim - For Death Knight Tanks


  • This topic is locked This topic is locked
27 replies to this topic

#1 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 30 December 2010 - 08:05 AM

Welcome!

This simulator was created during the Cataclysm Beta (with assistance from Communism and Anothriel) with the purpose of comparing the effects of various stat setups on damage, healing and absorption output, as well as such statistics as average downtime and rotational gaps.

Like all simulators, as close a reflection of reality as possible is the primary goal of BloodSim. If, in your use, you find something that needs to be corrected or investigated, please contact me as soon as possible. This also applies to the information in this thread.

Installation

BloodSim is available at BloodSim as well as the source code. The most current version of BloodSim and the Required DLLs must both be downloaded in order for BloodSim to run.

Settings

As most of these are straightforward and self-explanatory, not all settings will be covered.

Player

=
Stats
=
  • Ratings: The amount of each rating from your character sheet. Percentage conversion will be displayed in the adjacent field.
  • Racial Bonus: Bonus to Expertise (not rating) due to Race
  • Non-Armor DR: The total combined Physical Damage Reduction due to outside buffs (such as Inspiration)
  • DS Heal: The percentage of damage done in the Last 5 Seconds that is healed by Death Strike

=
Behavior
=
  • Pool RP: Minimum amount of Runic Power to maintain
  • Disease Refresh: If applicable via rotation, wait until a diseases is this duration or lower before attempting to refresh
  • Avoid Consecutive DS: Simulated DK will not use Death Strike twice in a row unless the length of time between two Death Strikes is greater than 5 seconds
  • Smart Blood Tap: Causes the Death Knight to only use Blood Tap if doing so will allow use of a Death Strike when it would not before (due to Runic Empowerment)

=
Talents
=
  • Diseases / Scarlet Fever: The duration in seconds for diseases / Scarlet Fever.
  • Scarlet Fever: Duration of Scarlet Fever in seconds
  • Scent / BCB: The number of talent points placed in Scent of Blood and Blood-caked Blade.

Boss

  • Periodic Enrage: Every <Interval> ms, the boss will gain a damage and/or attack speed bonus as set by the user.
  • Dragon Breath: Simulates a magic damage attack that occurs every <Interval> ms. This ignores armor and Blood Shield but is calculated in Death Strike's heal, as appropriate.

Running the Simulation

Options


Simple Run:
  • Iterations: The number of consecutive fights to simulate.
  • Minutes: The length of each fight.
  • Show Sim Log: Show/hide the simulation log to reduce calculation time and memory usage. Automatically hidden when iterations exceeds 20.
  • Show Graph: Show/hide the graph window when simulation is finished. If hidden, the output data will instead be saved to a text file in the BloodSim directory.
  • Name: The name to be displayed in the Graph window or used when saving results when Graph window is hidden.

Progressive:
Performs repeated simulation batches according to the normal run settings, increasing the user selected stat each time.

Output

When the simulation has finished, a Graph! window will pop up (provided it is shown) that graphs some basic information between iterations. This window also contains many statistics about each individual fight, and an average of all fights. This data format can be copied into an Excel friendly format via standard selection and Ctrl+C.

Current statistics that are tracked in output are as follows.

Total number of:
  • Death Strike
  • Heart Strike
  • Rune Strike
  • Blood Boil
  • RE Procs

  • DPS
  • Total Damage Dealt
  • Total Damage Taken
  • Total Damage Absorbed
  • Total Threat Dealt
  • Total Healed

  • Top 3 gaps in ability usage
  • Timestamp for when each gap occurred in the fight
  • Total damage dealt by each ability that was used

  • Overwrite Clips/Overwrite Clip Total: The count/amount of shields lost due to overwritten Blood Shields
  • Heal Clip Total: Calculated loss due to Last 5 Seconds window including a hit mitigated by Blood Shield
  • Boss Hits/Boss Hits Avoided
  • Lost/Gained Shield from Missed DS: Calculated increase or decrease in Blood Shield due to a miss/dodge/parry-ed Death Strike changing the Last 5 Seconds window

Simulation Log

Found in the main window, this serves as an enhanced combat log for the simulated fight(s). Generally more useful when running single simulations for analysis than in multiple iterations, its current main use is to determine what can cause large rotational gaps.

Current Needs and Future Goals

In the previously stated goal of being as accurate as possible, I have undertaken two large tasks for the future of BloodSim:
  • Provide simulation options specific to each current Raid boss encounter
  • Simulate, as realistically as possible, Healers of each class

Simulate each specific Raid boss

This task is currently in progress and I am in the data gathering stage, with which I will need significant help in order to accurately recreate each boss fight. Some boss ability data is available, but this early into the expansion much of it is not. If you wish to contribute and can do so, this is the information I need for each boss. (Note: I'm not at home as I write this, and it will be broken down into specific needs by boss when I have the opportunity, as I have some of this information already.)

  • Names and unmitigated damage amounts (10 and 25) for all abilities that will actually hit the tank and their cooldowns.
  • Armor amounts
  • Unmitigated melee swing damage and swing speed

Simulate Healing

Very light groundwork has been laid for this, but it is not yet in development.

Troubleshooting

Problem: BloodSim throws an Unhandled Exception at startup and does not load.
Solution: Download the required DLLs and place them in the BloodSim directory

Problem: BloodSim throws an Unhandled Exception when running the simulation, or has wildly inaccurate results
Solution: If you are in a non-US location, try changing the periods (.) to commas (,) in any number that has decimal places

#2 Asphyxialol

Asphyxialol

    TEH DEEPZ!!!

  • Allied Members
  • 1,768 posts

Posted 04 January 2011 - 05:51 AM

After attempting about 15-20 times I can not successfully get BloodSim to do more than about 10 iterations without crashing (8 minute iterations).

#3 Draginclaw

Draginclaw

    Von Kaiser

  • Members
  • 27 posts

Posted 04 January 2011 - 03:51 PM

I got the program running but have a question on the setup.

Where do you put your expertise/hit? Is that the boss box or is that the bosses stats?

Is it possible to include racials?

#4 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 04 January 2011 - 10:30 PM

After attempting about 15-20 times I can not successfully get BloodSim to do more than about 10 iterations without crashing (8 minute iterations).

Please PM me the full error message that you receive when it crashes.

I got the program running but have a question on the setup.

Where do you put your expertise/hit? Is that the boss box or is that the bosses stats?

Is it possible to include racials?

This is currently in the boss's stats, but it is counter-intuitive and I will be moving it in the near future.
Author of BloodSim

#5 Smee

Smee

    Glass Joe

  • Members
  • 15 posts

Posted 05 January 2011 - 09:23 AM

Please delete / point out to others in your above post, required DLLs are on the download page. Apologies.

#6 Tyvi

Tyvi

    Never, Mags. Never!

  • • Guide Author
  • 1,884 posts

Posted 05 January 2011 - 09:59 AM

Lichloathe, have you considered adding an option for temporary increased boss swing damage every X seconds somewhere to make the simulation a bit more applicable to current raiding? Right now the sim is good to see if avoidance or mastery gearing is better to take less damage/healing required on average but few fights that can kill a tank do so with just a constant stream of melee damage.

To elaborate:

Keep the options to set the normal melee damage in the sim as usual but then add another tab where you can add a damage increase % and how long and often it should happen. So for one fight you would do 60 seconds of "normal" sim then add a period of 15 seconds of 100% increased damage and repeat that cycle a few times. Then if you are really, really awesome add an option to pool runes 10 seconds in advance before that burst period. In addition this will also show the importance of expertise and hit more clearly because the window of huge Blood Shields is limited.

I know this is asking for quite a lot but it would put the whole mastery vs avoidance argument to rest because most people would pool runes and/or other CDs for predictable boss burst so that method would be more rooted in reality.

My gut feeling is that mastery will come out as winner in such a scenario because of the fact that you can pool your runes and get 2 huge shields in succession but that ignores the fact that you give up some mitigation before the burst by not DSing a few seconds beforehand whereas avoidance gearing still works and you can also pool runes in such a gearing method as well. I am very much interested how it would look simmed.

PS: Here is some motivation to add those options.

#7 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 05 January 2011 - 11:33 AM

I've considered even better, Tyds my dear!

However, pending I get things implemented that are as specific as I want, I think that's an excellent suggestion for a more basic but still more realistic boss scenario. I will definitely get to work on that! The boss damage increase is pretty easy, the Rune pooling will probably be a bit more complex just because the current background system isn't set up for pauses that aren't the GCD or lack of resources.

OH GOD THE SUNFLOWER

Edit: Your wish is my command. Boss can now enrage and have a dragon breath.
Author of BloodSim

#8 Draginclaw

Draginclaw

    Von Kaiser

  • Members
  • 27 posts

Posted 06 January 2011 - 02:37 PM

So I've been playing with version 1.3.2 and it doesn't seem like icy touch, blood boil or plague strike can miss. I have hit and expertise set to 0 and added icy touch, plague strike to the priority list. All other stats were left at the default.

If I don't add icy touch and plague strike it seems like it only refreshes diseases every minute with outbreak. Is this correct? I see under the Behavior options it has a disease refresh but I guess it doesn't do it since the abilities arent on the priority list.

#9 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 06 January 2011 - 03:09 PM

IT and BB hit automatically, but Plague Strike should be following the same rules as every other attack. I just double-checked this and it doesn't have any of the flags to keep it from missing in various ways.

Disease refresh option only applies when Diseases are in the priority list. I set those as separate so they could have their own logic, as it makes it easier on the backend than having it be PS/IT and makes more sense from a priority standpoint anyway. After all, PS and IT themselves are not the priority - the Diseases are. If Outbreak is off cooldown, it will be used, otherwise PS/IT. Outbreak is its own entry for Diseaseless builds.
Author of BloodSim

#10 Draginclaw

Draginclaw

    Von Kaiser

  • Members
  • 27 posts

Posted 06 January 2011 - 03:22 PM

IT and BB hit automatically, but Plague Strike should be following the same rules as every other attack. I just double-checked this and it doesn't have any of the flags to keep it from missing in various ways.


Any chance of letting IT and BB miss like they do in-game? I'm curious on the effect hit/expertise and in turns diseases (debuffs) has on mastery and it's value. My DK is geared for avoidance and I find a lot of times having to recast IT/BB on the boss. I'm thinking along the lines of the extra GCD's and the time they take up over the duration of a long fight.

#11 Fekta

Fekta

    Von Kaiser

  • Members
  • 27 posts

Posted 11 January 2011 - 06:00 PM

I'm looking forward to using this tool but I cannot seem to access the settings tab properly. I have downloaded the DLL and source code in addition to the app....it loads but when I move to the settings tab the right quarter and bottom quarter of the frame are simply not there. This very well may be an operator error, I have attached a screen shot as well.

Thanks.http://img825.images...18/42232027.jpg

#12 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 14 January 2011 - 12:25 PM

Fekta: This is probably due to some code I use that resizes the Simulation/Settings panels at launch time so I can easily screw with them in the designer without worrying about where they end up when it runs. It looks like your computer is using some kind of goofy scaling as everything is much larger than it should be. I'll see if I can fix this and maintain my laziness in the next build.

Edit: I'm fairly certain I've fixed this. Try out 1.3.3.0 when I release it (very soon) and let me know if it still doesn't work.
Author of BloodSim

#13 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 17 January 2011 - 07:40 AM

Very Important:
There is currently a bug with version 1.3.3.0 that is causing boss damage to ignore Blood Shields entirely. Please disregard any and all results you receive from this version until I have the chance to get this fixed.

[Edit: This has now been resolved. Please update to 1.3.3.1 immediately.]
Author of BloodSim

#14 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 28 January 2011 - 05:39 AM

Also very important:
It's come to my attention that the latest version of WControls.dll was not actually included in the Required DLLs package with the release of version 1.4, which should be resulting in any one attempting to use 1.4 to crash on startup. I have created a separate download specifically for this DLL update on the BloodSim website, and this should resolve all such issues.
Author of BloodSim

#15 Qaenyin

Qaenyin

    Piston Honda

  • Members
  • 116 posts

Posted 28 January 2011 - 01:41 PM

Is it possible for people simulating 4.0.6 tests that something could be uploaded to allow for either toggling to 15% death strikes or a DLL update could be uploaded that changes death strike to 15% healing?

Perhaps even a field that simply allows input of a manual death strike healing % value to account for future changes to death strike and to allow sims at the minimum healing value.

#16 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 28 January 2011 - 02:26 PM

Is it possible for people simulating 4.0.6 tests that something could be uploaded to allow for either toggling to 15% death strikes or a DLL update could be uploaded that changes death strike to 15% healing?

Perhaps even a field that simply allows input of a manual death strike healing % value to account for future changes to death strike and to allow sims at the minimum healing value.

Posted Image
Author of BloodSim

#17 Draginclaw

Draginclaw

    Von Kaiser

  • Members
  • 27 posts

Posted 28 January 2011 - 07:02 PM

I brought this up earlier but do you have any plans to let icy touch and blood boil miss?

I appreciate your work on the SIM but if certain abilities can't miss then it's kinda pointless.

#18 Qaenyin

Qaenyin

    Piston Honda

  • Members
  • 116 posts

Posted 29 January 2011 - 12:57 PM

Posted Image


Augh, sorry, I completely missed that field.

#19 Lichloathe

Lichloathe

    Von Kaiser

  • Members
  • 74 posts

Posted 02 February 2011 - 08:19 AM

I brought this up earlier but do you have any plans to let icy touch and blood boil miss?

I appreciate your work on the SIM but if certain abilities can't miss then it's kinda pointless.

Calling it pointless is rather inaccurate, but yes, there are plans for this. It requires some back end changes that I haven't yet had time to work on because of some scheduling shenanigans at my place of work. I hope to put out a release with this and other things updated this weekend.
Author of BloodSim

#20 huntcaudata

huntcaudata

    Piston Honda

  • Members
  • 137 posts

Posted 03 February 2011 - 08:23 PM

Feature request: Add an option for a racial miss chance (Night-Elf) bonus. This could probably just be a check box like Swordshattering.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users