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
 
H

HamsterBoo

Guest
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).
 

1337Elite

New Member
Reaction score
14
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
 

Sim

Forum Administrator
Staff member
Reaction score
534
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.
 
H

HamsterBoo

Guest
There, its a bit more polished and made a bit more like a tutorial (so you can put it in a section).
 

Flare

Stops copies me!
Reaction score
662
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.
 

darkRae

Ueki Fan (Ueki is watching you)
Reaction score
173
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 ??
 
T

Tubba

Guest
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.
 

Flare

Stops copies me!
Reaction score
662
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*
 

Sim

Forum Administrator
Staff member
Reaction score
534
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.
 

Flare

Stops copies me!
Reaction score
662
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 Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top