Tutorial Real DPS with Bash

H

HamsterBoo

Guest
-note- This tutorial is used for the purpose of balancing a map with bash and figuring out just how useful your bash is in combat -note-

Calculating Real Damage Per Second With Bash

Explenation of why I have done this
When a unit has bash, it is difficult to calculate exactly how useful that bash is. The problem lies in the fact that it is useless to calculate DPS leaving stun time out and is difficult to calculate it with stun time in.
DPS is simple without bash because it is merely a reflection of how much damage on average you do per hit (plus any modifiers) divided by your attack cooldown. With bash, your opponent is stunned part of the time you are fighting, resulting in him taking more damage, but no way to express that damage in DPS.
This is merely an equation of how to calculate how much the bash actually improves your DPS.

Equation
Min=minimum damage, Max=Maximum damage, Cd=Cool down, Db=Damage bonus, C=Chance of bash, Bl=Bash length, No=Number of opponents
((Min/2+Max/2)/Cd+Db/Cd*C)/(1-(C/Cd*Bl/No))
This is the average hit damage
This makes it the average DPS
This adds the average DPS of the bonus damage from bash
This is the average time/second your enemy will be stunned
This makes it so you divide by the amount of time the enemy is NOT stunned as opposed to the opposite
This changes the average enemy stunned time to suit how many opponents you have (1v1 ur opponent may effectively be stunned for 4/10 seconds, but 1v2 its 2/10, 1v4 its 1/10, etc.

Heres the equation for people who want to include everything in the RDPS (critical strike, bonuses to damage, % chance to deal damage) without calculating it themselves.

Min=minimum damage, Max=Maximum damage, Cd=Cool down, Db=Bash damage bonus, C=Chance of bash, Bl=Bash length, No=Number of opponents, Cm=Critical strike multiplier, Cc=Chance of critical strike, B=bonus damage (items)
((Min/2+Max/2+B+(Min/2+Max/2+B)*(Cm-1)*Cc+C*Db)/Cd)/(1-(C/Cd*Bl/No))
This is for those who want to include critical strike.
-Note: If you have a skill with a% chance of dealing X damage, just add another of the stanza C*Db to the right of the original where C is the % chance and Db is the damage bonus of the skill.

How to use equation
1. You can't have RDPS without average damage, so calculate your average damage (include EVERYTHING (including abilities, bonuses, etc). You do this by adding your maximum damage and minimum damage and then dividing by two (in equation it is distributed), then adding any bonuses (orbs, claws of attack, critical strike, +% damage, etc.).
-Note: for calculating how much bonus damage critical strike does, its (Average Damage)*((Damage Multiplier)-1)*(Chance of Critical Strike)
-Example: Average damage=10, 10% chance of 5 times critical hit does (10)*((5)-1)*(.1)=4 damage, meaning on average you do 14 damage per hit.

2. To make your average damage per hit average damage per second, divide it by your attack cooldown. The formula for this is (Base attack speed)*(100/(100+(bonuses)+(agility)*(bonus per agility point)*100)
-Example: Base attack speed=1.5, bonuses=+20% and +10%, agility=70, bonus per agility point=.01%: (1.5)*(100/(100+(20+10)+(70)*(.01)*100)=1.5*(100/(130+70)=.75

3. Next you need to add the bonus damage of the bash to your average damage. The equation for this (included above) is (bonus damage of bash)*(chance of bash)/(attack cooldown)
-Note: this equation can be used for any % chance of bonus damage
-Example: Bonus damage=25 (normal), Chance of bash=10%, attack cooldown=.5: (25)*(.1)/(.5)=5 average bonus damage per second

4. This is where the whole thing gets tricky. You have to take the average time your enemy is stunned per second (Bash length)*(chance of bash)/(attack cooldown) which is included in the equation. This is only against 1 opponent though, so divide by the number of opponents you are facing to get the effective average stun time (20 seconds of stun vs 2 opponents is the equivalent of 10 seconds that both of them are stunned). You want to make sure that you divide your total DPS by the time your enemy is NOT stunned however, subtract average stun time per second from 1.
Example: Lets assume that a unit does 10 damage per second, 1 hit per second, and has a 10% chance of bash which lasts 1 second. In 100 seconds, the unit stuns 10 times, leading to 20 seconds of the enemy being stunned. The unit does 800 damage while the enemy is not stunned and 200 damage while the enemy is stunned. If you take the 200 damage and spread it over the time enemy is not stunned you get 2.5 damage for each second, plus the 10 damage you already had, equaling 12.5 Real Damage Per Second.
However, if you are fighting 2 opponents, stunning 1 for 20 seconds is the equivalent of stunning both for 10 seconds each. 900 damage normally and 100 damage while the enemy is stunned. Spread out the 100 damage over 90 seconds and you get about 1.1, meaning you do 11.1 Real Damage Per Second.
The equation does the same thing, but over a period of 1 second, not 100.

5. Your done, normal DPS has been divided by the amount of time per second your opponent is not stunned (if he is stunned 1 second or more (mathematical, not practical) out of 1 second, you do infinite damage (dividing by 0 equals infinity), if he is never stunned, you do normal DPS).

Heres an unexplained walkthrough/example
Lets assume out unit does 10-24 damage with an attack cooldown of .5 and a 2 second 10% bash that deals 25 bonus damage.
First, find the DPS without bash. (10/2+24/2)/.5=34
Then, calculate the DPS of the damage bonus. 25/.5*.1=5
Calculate total DPS. 34+5=39
Chance of bash/second. .1/.5=.2
Average time spent bashed. .2*2=.4
Real DPS vs 1 opponent. 39/(1-.4)=65
Real DPS vs 2 opponents. 39/(1-(.4/2))=48.75
Real DPS vs 3 opponents. 39/(1-(.4/3))=45
Real DPS vs 4 opponents. 39/(1-(.4/4))=43.33
Real DPS vs 5 opponents. 39/(1-(.4/5))=42.39
Real DPS vs 10 opponents. 39/(1-(.4/10))=40.63
Real DPS vs 20 opponents. 39/(1-(.4/20))=39.80
Real DPS vs 50 opponents. 39/(1-(.4/50))=39.31
Real DPS vs 100 opponents. 39/(1-(.4/100))=39.16

The reason the RDPS decreases when you are against more opponents is that this method takes the damage that is done when your opponent is stunned and adds it to the damage when the unit is not stunned. The problem with this is that when you have more opponents the effectiveness of the bash is lessened. The equation for multiple opponents only works when the opponents are the same. It is possible to calculate if they are different, but it is not useful or easy.

For those of you familiar with graphing, this is basically a graph with a Y asymptote on 39 and an X asymptote on 0 (although it is impossible to have points in between integers of the X).

Suggestions for choosing # of opponents when balancing (the less opponents you choose, the lower his base damage must go for him to be balanced)
In a melee map your hero will be fighting with a team, so 2-4 opponents is most likely, so choose 3 for # of opponents.
In an RPG with spell immune bosses, its probably more like 4-6 opponents, so choose 5 for # of opponents.
In an RPG without spell immune bosses, its 1 or 4-6 opponents, so 2 is probably best to keep him from owning bosses.
-Note: to balance it out a little better, it would be best to give the boss some support units and choose 3 or 4 for # of opponents
In a AOS map, it will be about 1-3 opponents, but choose 1 or 2 for # of opponents (or he will become too good a hero-killer)
In general, just figure out about how many opponents will be teaming the hero at once and choose the middle number (non-integer values work BTW)



Edit: added in the /No in (I forgot it in first version
Edit2: added a sort of walkthrough for the equation
Edit3: added in another equation which is a tiny bit different (but ultimately the same) and includes the equation for critical strike
 
when you have a unit with bash (or an item that gives bash) or anything of its type, you want to see how that bash affects its RDPS (like the people who calculate how much damage critical strike adds on average). This is used to see just how effective your bash is for balancing reasons (say, ur making an item that gives +10% damage and an item that gives 10% bash, which one is better? How much better?). Its pretty much only useful for balancing and figuring out how much Real Damage Per Second you do.

Edit: wow, not as many posts as I was expecting for this ground-breaking discovery (trust me, many think a 50% bash chance means you do 50% more damage and the others figure out why not just before they start getting a headache).
 
I think the lack of replies is because they don't see an immediate use for it. Nice tutorial though, may need this for my underpowered ORPG I'm making. :p
 
Nice work.

This isn't really a tutorial though... can't find a spot to put it. :confused:

I'll think it over. ;)

What you could do for now is to polish it a little bit. Hell, you could even add a screenshot of that graph you're speaking of. Or separate it in sections...?

The beginning of your tutorial could definitely use some more explanation. Maybe that "edit" part near the end? Oh and, speaking of edit, remove the "edit" mention when making a tutorial. It should only be there to announce a new version.
 
There, its a bit more polished and made a bit more like a tutorial (so you can put it in a section).
 
Ahm, I don't understand how this works.
With bash, your opponent is stunned part of the time you are fighting, resulting in him taking more damage, but no way to express that damage in DPS.

Whether a unit is stunned or not won't increase/decrease the damage the unit receives, so how should that affect a unit's DPS.
 
Example: Lets assume that a unit does 10 damage per second, 1 hit per second, and has a 10% chance of bash which lasts 1 second. In 100 seconds, the unit stuns 10 times, leading to 20 seconds of the enemy being stunned.

Stun 1 time == 1 sec Stunned
Stun 10 times == 20 sec Stunned ??
 
Ahm, I don't understand how this works.


Whether a unit is stunned or not won't increase/decrease the damage the unit receives, so how should that affect a unit's DPS.

In relativity, it does, since you won't take damage during that period. You could as well see it as doing all the damage you do during the stun period in one heavy hit, since the enemy can't do anything while he's stunned anyway.



Nice tutorial, +rep.
 
In relativity, it does, since you won't take damage during that period. You could as well see it as doing all the damage you do during the stun period in one heavy hit, since the enemy can't do anything while he's stunned anyway.

If the whole purpose of the tutorial is to show the amount of damage a unit can deal physically per second, it shouldn't matter whether the unit is stunned for 0.01 seconds or 10 seconds since a) any damage the stunned unit deals back to the other unit doesn't affect the stunning unit's DPS in any way, b) stun can't amplify/decrease damage, c) any healing (spells or otherwise) shouldn't be taken into account since you are measuring the amount of damage a unit deals, not how much HP the attacked unit will lose and d) de-buff spells shouldn't be taken into account since they aren't permanent and won't have a long-sustained effect on the unit's damage output.

*waits for HamsterBoo to explain how stun duration can affect a unit's DPS*
 
Well, technically, he's taking more damage.

If say, you are fighting a monster for a total of 10 attacks done from each. 10 attacks from you, 10 attacks from the monster. Bash would prevent many of these 10 attacks from happening, and thus would increase your DPS not only because of the bonus damage, but also because of the stun.

Let's say we fight again, but this time I have bash. The DPS I'll be doing to the monster before he can get to hit me 10 times will be far greater than if I hadn't bash.

Understand?

At least, it's how I understood this tutorial's point.
 
But that's in the event that the enemy unit has Bash. From my understanding, it's calculating your unit's damage output, under normal circumstances i.e. no stun, no buffs/debuffs, nothing that can affect the unit's physical attacking in any way. And under those circumstances, the stun duration won't have any affect on your DPS since the unit can't stop you from attacking, or reduce your damage output via damage or speed decrease.

Or maybe I've totally misunderstood this whole thing ^^

Bash would prevent many of these 10 attacks from happening, and thus would increase your DPS not only because of the bonus damage, but also because of the stun.

If my unit attacked your unit, and my unit had bash, yours didn't, the stun duration shouldn't increase or decrease the DPS since my unit's DPS isn't affected by the damage I take from your unit. It would affect your unit's DPS though (is that what you were saying?) but I would put that under abnormal circumstances if this was to be demonstrated (since the demo would probably have to show the unit's DPS with/without bash in a normal situation, where 'external' factors shouldn't change anything).
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • The Helper The Helper:
    News portal has been retired. Main page of site goes to Headline News forum now
  • The Helper The Helper:
    I am working on getting access to the old news portal under a different URL for those that would rather use that for news before we get a different news view.
  • Ghan Ghan:
    Easily done
    +1
  • The Helper The Helper:
    https://www.thehelper.net/pages/news/ is a link to the old news portal - i will integrate it into the interface somewhere when i figure it out
  • Ghan Ghan:
    Need to try something
  • Ghan Ghan:
    Hopefully this won't cause problems.
  • Ghan Ghan:
    Hmm
  • Ghan Ghan:
    I have converted the Headline News forum to an Article type forum. It will now show the top 20 threads with more detail of each thread.
  • Ghan Ghan:
    See how we like that.
  • The Helper The Helper:
    I do not see a way to go past the 1st page of posts on the forum though
  • The Helper The Helper:
    It is OK though for the main page to open up on the forum in the view it was before. As long as the portal has its own URL so it can be viewed that way I do want to try it as a regular forum view for a while
  • Ghan Ghan:
    Yeah I'm not sure what the deal is with the pagination.
  • Ghan Ghan:
    It SHOULD be there so I think it might just be an artifact of having an older style.
  • Ghan Ghan:
    I switched it to a "Standard" article forum. This will show the thread list like normal, but the threads themselves will have the first post set up above the rest of the "comments"
  • The Helper The Helper:
    I don't really get that article forum but I think it is because I have never really seen it used on a multi post thread
  • Ghan Ghan:
    RpNation makes more use of it right now as an example: https://www.rpnation.com/news/
  • The Helper The Helper:
  • The Helper The Helper:
    What do you think Tom?
  • tom_mai78101 tom_mai78101:
    I will have to get used to this.
  • tom_mai78101 tom_mai78101:
    The latest news feed looks good
  • The Helper The Helper:
    I would like to see it again like Ghan had it the first time with pagination though - without the pagination that view will not work but with pagination it just might...
  • The Helper The Helper:
    This drink recipe I have had more than a few times back in the day! Mind Eraser https://www.thehelper.net/threads/cocktail-mind-eraser.194720/

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top