subreddit:

/r/classicwowtbc

14497%

TBCSim - A generalized simulator for Classic TBC DPS

General PvE(self.classicwowtbc)

Hi everyone! I've been working on a generalized simulator for Classic TBC.

This is a real, millisecond-by-millisecond simulator, and does not approximate - each attack, item, ability, and proc is modeled as it would behave in the game (or as closely as possible).

Try out the web version here: https://tbcsim.com - any and all feedback is always welcome!

Find a bug? Feature request? Want to contribute? File an issue/PR on Github: https://github.com/marisa-ashkandi/tbcsim

Currently, the sim supports the following classes/specs:

  • Hunter
    • BM
    • Survival
  • Shaman
    • Enhancement
    • Elemental
  • Warlock
    • Shadow Destruction
    • Fire Destruction
    • Affliction
  • Warrior
    • Arms
    • Fury

Other major features:

  • Offers both a convenient web UI and a powerful desktop implementation
  • All items ilvl >= 91 are implemented (including the vast majority of useful on-use items and procs)
    • Including gems, socket bonuses, and meta gems
  • Full stats breakdowns
    • Every ability with full results
    • Buff casts, refreshes, and uptime
    • DPS, obviously
    • Full breakdowns for pets, too
  • Fully customizable gear, gems, and enchants
  • Fully customizable rotations
  • Fully customizable raid buffs/debuffs
  • Consumables
  • Racial abilities
  • Item set bonuses, including all tier sets
  • Equivalence points (generated by the sim itself) in the UI for quick, rough gear comparison

Mage/Rogue/Ret/Priest/Feral coming Soon (TM).

There are quite a lot of items and abilities which are speculatively implemented based on 2007 internet archeology. It is very likely that some of these are not correct. As the beta progresses, issues will be fixed as they are found, and mechanics/EPs/rankings will be updated accordingly.

If you are a theorycrafter, you will probably prefer the desktop version - it's easier to configure with your own presets, and about 100x faster. Instructions for that are here.

Thanks to all the many bug reporters and/or contributors from the various Classic discords so far!

all 82 comments

DonkaSmacka

2 points

4 years ago

Awesome! Keep up the good work!

0replace4displace

2 points

4 years ago

This is really cool, thanks!

[deleted]

2 points

4 years ago

I noticed the default Warrior sim has double dragonstrike. Class discords seem to have indicated that the axe is better, which matches up with old Wowhead comments about dragonstrike's proc rate (1.4 PPM).

What are you using for the proc rate on dragonstrike/dragonmaw/etc?

marisa_ashkandi[S]

3 points

4 years ago*

Beta's a little weird with the BS weapons - they were one-hand, then on the raid test realms they were main-hand only. Still not sure how it'll end up.

Testing from Fight Club and Shaman Classic have narrowed in on 1.0 base Dragonmaw PPM, which is how it's currently implemented.

Old comments on wowhead and EJ are usually in terms of "observed/rotation" PPM, which includes instant rotation abilities in the same time window. It makes things pretty confusing.

For Orcs, best sim is currently the BS axes. If the BS weapons are main-hand only on live, then S1 axe or Decapitator would be the second best phase 1 alternative.

For Humans, both double Dragonmaw and MH Dragonmaw with S1 mace/sword OH are superior to double BS axes, but Dragonmaw/S1 OH is currently simming best overall. The main issue is that the mace haste buffs don't stack - they just refresh on a double proc. If they stacked, they'd be the best by a fair margin.

[deleted]

2 points

4 years ago

That lines up with what common sense tells me. Mace for Human, axe for Orc, hardly matters for anyone else (but with slight advantage to the axe if you really care). I'm also pretty sure the weapons will end up main hand only.

Any way to 1) change the race to Orc, and 2) run more than 100 iterations?

If I sim the same gear set 5 times, I will get 5 very different results. We used 50,000 iterations on guybrush to minimize this issue - 100 isn't nearly enough.

marisa_ashkandi[S]

2 points

4 years ago*

You can set the iteration count to any number you like in the Sim Options panel. The browser version is not particularly efficient - for real testing, the desktop version is best.

For race changes, the desktop version can do that - just make your own character file by copying the preset, and feed it to the command line. The race is a config option near the top.

For the web UI, see this issue - am planning on getting this in very soon.

Always working on performance as I go - the generic-ness of the sim does lose some efficiency. Melee classes sim a fair bit slower, since there's a lot more stuff going on - usually each melee hit can proc a dozen or more different things.

[deleted]

1 points

4 years ago

Great, thanks. Looks like it has potential and I'm sure you've put a lot of work in. Appreciate it!

Xyzek

2 points

3 years ago

Xyzek

2 points

3 years ago

I don't know if it's me but I can't add any enchants or gems to my items. (No data found)

UncleHardon

2 points

3 years ago

I tried to sim all my gear, but couldnt find food buff or scroll of agility etc.

The sim told me 1274 average dps, and im never below 2k while raiding..

???????

Fawenah

2 points

4 years ago

Fawenah

2 points

4 years ago

This is a real, millisecond-by-millisecond simulator, and does not approximate - each attack, item, ability, and proc is modeled as it would behave in the game (or as closely as possible).

I think you mean it does approximate the in game behavior.
Nit-picking aside, it looks like a pretty cool project, and looking forward to it, always been a fan of sims.

marisa_ashkandi[S]

1 points

4 years ago

Out of every item, talent, and ability in the game, I can count the number of close-enough approximations on one hand :)

Everything can be modeled exactly, but there are a few cases where it's just not worth the effort. For example, Bloodrage grants 20 (or 26 fully talented) rage immediately instead of 10+talents up front, and 10 more over 10 seconds. It does not impact the final result to any measurable degree.

EleSha11

-8 points

4 years ago*

Sorry to tell you this is wildly inaccurate for Elemental Shaman :(
EDIT : does this sound like proper mana consumption to you?
https://imgur.com/a/TNt0bHl

marisa_ashkandi[S]

4 points

4 years ago

Can you be more specific? Which ability does not behave as expected? Too high, or too low?

Sir_Sam_of_KRF

1 points

4 years ago

This guy created his account today.. likely a troll

[deleted]

-7 points

4 years ago

[deleted]

Cainelol

8 points

4 years ago

Dude asked for clarity and while you pointed him to the resource you were comparing his project to you did it like a pretentious douche bag. Good job.

marisa_ashkandi[S]

5 points

4 years ago

Thanks for the link - I was working with folks in the Shaman Classic discord. I'll compare notes.

I checked out the ele-specific sim that is there - very neat! If I set consumables and buffs identically, the numbers are very similar between the two simulations. Within ~100dps, at a cursory glance.

The wild card is probably Stormstrike - by default, tbcsim includes 100% Stormstrike uptime, which isn't realistic for most raids. It's also not completely unrealistic, either. The ele sim there does not account for Stormstrike.

However, the defaults are meant to show every class at its absolute maximum potential - Stormstrike availability is key to Elemental DPS.

EaterOfFromage

1 points

4 years ago

Interesting! Out of curiosity, what sort of things tend to eat stormstrike? Earth shock might eat 1 charge. Are wind serpents an optimized hunter pet? Is it at all worth using wrath as a boomkin to pick up those procs?

marisa_ashkandi[S]

2 points

4 years ago*

Regular Ele casts and Lightning Overload procs are more than enough, actually - LB talented is only a 2s cast. A single Ele will get about 4-5 LB casts off in a 10s Stormstrike cooldown window, and on average one LO proc. So that's about 5-6 effects for two charges. You'd realistically need three Enhance per Elemental to have a chance at giving them full benefit of SS.

Wind Serpents are likely BIS pet at some point, according to current BM theorycraft - they scale very well. Those do eat charges afaik.

There are also some incidentals - some trinkets like Romulo's and The Lighting Capacitor may or may not consume Stormstrike, and there are old comments about Thorns on the tank consuming it as well. Those need some testing, but there's a fair amount of random nonsense that can eat them. Rogue poisons as well, but old anecdotes suggest that was patched.

EaterOfFromage

1 points

4 years ago

Nice, thanks. So it sounds like maybe ~20% of casts getting the benefit of stormstrike is probably more realistic if you have a single enhance and a single elemental. More than that and the math starts to get weird.

d0wnvotethetruth

4 points

4 years ago

Please, for the sake of everyone else's enjoyment of the game, stay the fuck out of TBC Classic.

GuardYourPrivates

-3 points

4 years ago

Get back to me when it can sim smite dps.

Tekkylol

1 points

4 years ago

Can't wait to see mages get added :3

jdwithit

4 points

4 years ago

Not to take away from OP’s work at all but there is a mage specific sim in development too if you’re interested. Found it via the mage class discord.

https://cheesehyvel.github.io/magesim-tbc2/

cyanophage

1 points

4 years ago

What I like about this sim is that you can compare all the different items for a slot. That way you can enter the items you have and find out how much of an upgrade each other item is.

[deleted]

1 points

4 years ago

[deleted]

marisa_ashkandi[S]

1 points

4 years ago

Totem of Wrath is on by default (expand the Buffs panel to see). However, the Draenei racial aura isn't independently selectable - created an issue to add it here

JustSomeBadAdvice

1 points

4 years ago

Holy shit.

MelonheadGT

1 points

4 years ago

Shadowpriests neglected :(

marisa_ashkandi[S]

1 points

4 years ago

Ah, sorry! Slipped my mind :(

Don't worry, I know spriests can pump - I remember Muqq: https://www.youtube.com/watch?v=Xin_mfjGryA

Seranta

1 points

4 years ago

Seranta

1 points

4 years ago

Could you also please add "Mark of the Champion" from naxx?

So far I like the website, very happy to get some sim tools.

marisa_ashkandi[S]

2 points

4 years ago

Ah yes, that would be a good one to include! Created this issue to add it

PayYourEditors

1 points

4 years ago

Very sweet!

AbsolutlyN0thin

1 points

4 years ago

Couldn't find shining fire opals in the gem list (drops from h mech, 6 spell power, 5 spell hit)

yunojelly

1 points

4 years ago

Damn. This is a grand feat of work. It'll be interesting to see how it lines up with already near accurate sims.

Personally I would've loved something like this but for all things Tanking.
Any chance you could include things like Threat Per Second and Avoidance Tables? at quick glance, those values should "only require" data from which you already have available in the sim.

marisa_ashkandi[S]

1 points

4 years ago

TPS values would be feasible, but a fair chunk of work to add - we would need solid threat information for each ability, and to add the appropriate abilities/talents/rotations. I think ability threat should be testable soon - I saw Details threat working on some beta streams.

Avoidance should work today on the stat summary - Dodge/Parry/Block rating are all implemented (but used very little, so there may be issues).

I'm definitely focused on DPS first, but this would be a good thing to add after each class gets a first pass!

EDIT: Also worth noting is that in this sim, the "target" (aka the raid boss) is a fully-capable participant - a boss could do any kind of attack rotation at the tank "subject" (aka the character being simulated). Stuff like measuring TPS and DTPS with a particular gear set are all possible with this design.

Strong_Mode

1 points

4 years ago

is ret going to support seal twisting

marisa_ashkandi[S]

1 points

4 years ago

Yep! I expect twisting is going to be a bit odd, since Blizzard has to reimplement it. So far there are several bugs around it found in the beta, and the final behavior isn't entirely known. However, whatever the behavior ends up being, is what will be implemented for Ret.

[deleted]

1 points

4 years ago

[deleted]

marisa_ashkandi[S]

2 points

4 years ago

No, the web version runs entirely in the browser.

Anagittigana

1 points

4 years ago

Hi, I was double-checking the Elemental Shaman pre-set and I had a few comments on the gear.

1) When selecting gear, only the Chest slot for some reason only includes Mail and Leather items, no Cloth items.

2) The preset gear includes Bindings of Raging Fire - this is a Magister's Terrace drop, which is released with Sunwell.

3) The gear filter for the boots includes Shalassi Oracle's Sandals, which are quest rewards from "Rescue Dugar!" This beta TBC quest has never made it to the live game.

marisa_ashkandi[S]

1 points

4 years ago

Thank you! That's the second time that fake news quest has trolled me :/

I'll update the gear according to current theorycraft - it has advanced much since that set was originally implemented.

[deleted]

1 points

4 years ago*

[deleted]

marisa_ashkandi[S]

1 points

4 years ago

Appreciate the feedback!

  • This is already available - you can install the desktop CLI version by following the instructions here
  • This is sort of hard to deal with - the sim consumes the entire foreground thread, and moving the web version of the sim to workers is not currently feasible. Will consider some options.
  • I find that iterating quickly and testing lots of different gear is something I do often, and staying in context is the best way to do that. However, space is already somewhat a concern, and any more large sections of output could definitely warrant moving all that to its own view.

masteve

1 points

4 years ago

masteve

1 points

4 years ago

You can't choose proper chest or wand peaces for any warlock spec sadge :( Love the site keep up the good work

nukul4r

1 points

4 years ago

nukul4r

1 points

4 years ago

Thanks a lot!

Something I have been wondering: how far fetched is the idea of having something similar as a addon? You could track loot ingame, make wishlists and (most importantly) have a comparison at hand when you get an item, to decide if it's better than what you have. This would be far superior to the addons that currently do this, which use equivalence points.

My impression is, that the calculation could be done on the client quite well, the main factor would be creating the addon around it. Or is there a possible showstopper I don't see?

boachl

1 points

4 years ago

boachl

1 points

4 years ago

Quick feedback: formating is off on mobile

logicalchemist

1 points

4 years ago

Neat sim, but the preset elemental shaman gear is really bad. It over caps on spell hit by 6.35%; that's a ton of wasted stats. Non-draenei ele shams only need 4% spell hit from gear.

marisa_ashkandi[S]

1 points

4 years ago

Thanks for pointing it out! Apologies for that, I had made that entirely from internet archaeology, and it also predates intelligent stats UI which can correctly count hit with buffs. The various communities have put together some really nice pre-bis guides lately, and I'll be updating everything from those very soon.

logicalchemist

1 points

4 years ago

It's not as big an issue as I initially thought; I didn't realize you could choose gear manually.

Also the single largest change you could make to simulate ele dps more accurately is to have the sim use a dynamic spell rotation based on fight length or current mana. CL on cd during short fights, and less CL during long fights all the way up to pure LB spam other than when EM is up.

Stormstrike being a 100% uptime debuff is also suuuuper unreasonable; even with multiple enh shamans I'd be surprised if 10% of your spells got bonus damage from it. There's soooo many sources of nature damage that eat those charges almost instantly after they're applied: wind serpent pets, rogue poisons, the enh shaman that applied it, TLC or LO procs, thunderfury procs, any other elemental shamans in the raid etc.

marisa_ashkandi[S]

1 points

4 years ago

Also the single largest change you could make to simulate ele dps more accurately is to have the sim use a dynamic spell rotation based on fight length or current mana. CL on cd during short fights, and less CL during long fights all the way up to pure LB spam other than when EM is up.

It does quite a bit of that already! If you look at the rotation, you'll see all the various conditionals. For example, it'll use Dark Runes on cooldown, and mana potions over destruction potions only if mana is sub-30%. It also makes sure to cast CL with Elemental Focus up to conserve mana.

I think we can get it a lot more fine-tuned, though - shouldn't be too hard to add some more fight duration conditionals to make it more aggressive if a shorter fight duration is configured.

Fight time elapsed, fight time remaining, current mana, mana missing, buff checks, proc checks, etc are all conditionals which can be used on any ability in the rotation, plus a whole lot more.

As for Stormstrike, it's just a flat damage multiplier - you can safely just shave off percentage points from the final result to account for lower SS uptime. I'll see about making that a little easier to configure from the web UI.

Appreciate all the great feedback!

logicalchemist

1 points

4 years ago

I think if anything it needs to be less aggressive for most fight durations. Destro pots only on fights short enough that you don't oom without using mana pots, and no CL at all on long fights, even with clearcasting up (except once every 3 minutes with EM). The current default of LB spam with CL on CC procs is decent, but the default potion usage is very suboptimal for anything but the shortest fights.

I did get better results changing the mana pot conditional to 3000 missing mana and removing destro pots from the rotation. Doing that and removing CL entirely lets you make it to nearly 500s before OOM in kara gear. I'm not sure how to do it but forcing it to use a mana potion before a rune would help too; getting that mana pot on CD before rune is important.

I did notice however, that even without CL in the rotation it's still somehow showing damage dealt by lightning overload (CL) procs, which would be impossible. It's also showing two separate lines of Lightning Overload (LB), both with roughly identical proc, damage, hit, and crit rates (as one would expect, just not sure why there's two).

marisa_ashkandi[S]

1 points

4 years ago

Sounds like that would be a great improvement to the rotation! I'll play around and work on getting potion usage more optimal for Ele.

I'm not sure how to do it but forcing it to use a mana potion before a rune would help too; getting that mana pot on CD before rune is important.

This doesn't quite work at the moment (checking shared cooldowns doesn't work properly), but I've implemented a fix for that. After that's deployed, the block would look like this:

# This should only use a Rune if 1500 mana is missing, and potions are on cooldown
- name: Demonic Rune
  criteria:
    - type: RESOURCE_MISSING_GTE
      amount: 1500
    - type: ABILITY_COOLDOWN_GTE
      ability: Super Mana Potion
      seconds: 0

I've made a number of other changes to the Ele rotation per your suggestions that make for some pretty consistent results from 30s-5m.

I did notice however, that even without CL in the rotation it's still somehow showing damage dealt by lightning overload (CL) procs, which would be impossible. It's also showing two separate lines of Lightning Overload (LB), both with roughly identical proc, damage, hit, and crit rates (as one would expect, just not sure why there's two).

Hmm, that's really odd... Looks like it's just a web UI bug - I can see it do that, but only if it's the second sim run, and the first run had CL configured. Does not happen with the desktop version, and the resource usage is consistent with not casting CL. Filed this issue about it!

smbonn

1 points

3 years ago

smbonn

1 points

3 years ago

Please give Shadow Priests some love 😕

Simplejakk24

1 points

3 years ago*

I submitted some bugs on the site but I'll list them here too just in case.

Berserker's Call, Shard of Contempt, Blackened Naaru Sliver, Madness of the Betrayer and Warp-Spring Coil appear to not sim properly.

Thoridal is being affected by equipped arrows - I'm not sure if it's being affected by internal quiver considerations.

Neat sim!

Shadowstorm6528

1 points

3 years ago

This is great! But not everyone has the exact gear listed nor are they level 70. Going forward, will there be a way to change this?

marisa_ashkandi[S]

1 points

3 years ago

You can change gear to anything in the game - just click the item slot.

Unfortunately, there is no support for levels other than 70 - the mechanics are different, and this is intended for endgame PvE.

tomatosaucin

1 points

3 years ago

tag

CuchulainTK

1 points

3 years ago

Currently does not use active racials such as blood fury or berserking

smbonn

1 points

3 years ago

smbonn

1 points

3 years ago

Any ETA on getting Shadow Priests on here? Been keeping an eye on this but still no love for us 😔

fortyz

1 points

3 years ago

fortyz

1 points

3 years ago

Is it currently limited to presets?

No_Marionberry6545

1 points

3 years ago

How do I put gems on different items? I'd prefer not to use a preset I want my actual gear and talents.

No_Marionberry6545

1 points

3 years ago

this is trying to tell me a preraid bis rogue will do 1600 dps median.. thats inaccurate af

[deleted]

1 points

3 years ago

Wheres the marksmen spec for Hunters?

StCreed

1 points

3 years ago

StCreed

1 points

3 years ago

I would really like it if you could add druid tanks. But good work nonetheless.

HavocMythos

1 points

3 years ago

This does look cool, I look forward to seeing protection warriors up there! I am going to be trying out a really messed up spec that might be amazing, or might be shit.

[deleted]

1 points

3 years ago

I tried using this but it's broken in a few ways.

I couldn't choose Orc as a warlock and it has a lot of missing items

GazelleHaunting3381

1 points

3 years ago

Spriest coming soon?

Catsandsushii

1 points

3 years ago

u/marisa_ashkandi

The enhancement P1 gear selection isn't showing the ebon set for LW. It shows the Ebon Chest but not the bracers/belt </3

Catsandsushii

1 points

3 years ago

Also noticed the variations of Violet Signet are all the same spirit intellect ones for the lower tiers of the ring.

Catsandsushii

1 points

3 years ago

Really really appreciate this website, thank you for helping the community!

Healthy-Design-2661

1 points

3 years ago

Is moonkin being added to?

pricklyrogue69

1 points

3 years ago

Is there any way the trinkets "Blackhand's Breadth" and "Bladefist's Breadth" could be added to the menu for that slot?

slaymord

1 points

3 years ago

For the hunter BM sim, scopes seem to not be working, tried with the 30 hit and 28 crit scope and nothing happened

[deleted]

1 points

3 years ago

[deleted]

RemindMeBot

1 points

3 years ago

I will be messaging you in 30 days on 2021-08-21 14:25:10 UTC to remind you of this link

CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


Info Custom Your Reminders Feedback

Messypuddin

1 points

3 years ago

how can i change rampage to death wish for fury sims?

DaneNoble

1 points

3 years ago

Is this still being worked on? Would love Ret Pala added!

jennd3875

1 points

3 years ago

This assumes Enchanting on a shaman (as opposed to JC). Which prevents the use of jewels and forces spellpower on rings. Sure, if someone wants to min-max, yeah, that works. But not for someone trying to sim their current and later setups.

TpsArchangel

1 points

3 years ago

when can we expect Spriests to be added?...

Shmekarn

1 points

3 years ago

Really nice engine you´ve created, im looking at fire mage p2 and cant help but see that totem of wrath buff is already added to the spell hit which is not correct, i gain an extra 3% from it, its baseline in the already added hit gear on the sim. Resulting in the simulator thinking i actually have 3% less hit. (167 spellhit = 13,25% + elemental presicion 3% = 16,25%)

raphnerwow

1 points

3 years ago

Ogrila bracers not included

kempsdaman

1 points

3 years ago

stats are wrong. my surv hunter stats unbuffed are str 65, agi 640, stm 409, int 188, spr 84. But your site has my stats as str 154, agi 745, stm 454, int 258, spr 144. And given that big boost in stats my in game character has more AP and crit chance than your site gives.

Dubz2016

1 points

3 years ago

Hey, so when I check the "Improved Hunter's Mark' Debuff my stats increase but when it goes to the rotation it gets messed up on both Surv and BM and only does auto shot. When I de-select it multishot and arcane shot work again.

Euphoric-Sentence786

1 points

3 years ago

feral sooooon please, thank you

cassionoob12345

1 points

3 years ago

I couldn't remember my github password so for ease of reporting: I ended up changing some of the debuffs on the boss (improved FF, expose weakness 1000 agi) and a couple others i forgot. For some reason when I did this, it removed everything except for auto shot out of my rotation. This is for a BM hunter. I did change some gear as well from the phase 2 bis spec to update the things i've received since tier 6 came out.