READ CAREFULLY EVERYTHING TO AVOID ANY PROBLEMS
This is not a regular guide!
I've made a little program to calculate damage for any combination of WP items
I am not a programmer but it works quite good. It is written in VBA (Visual Basic for Applications) - a code implemented in Microsoft's Excel.
First of all, download
this file.
It is Excel's spreadsheet with code written and when you open it, should seem like this.
NOTE: In case you have any problem with this file, I am posting a code. You can copy it and create your own program.
1. How to use it? Top
Depending on your Excel's version there are different ways to launch my code.
In most cases shortcut alt+F11 (Windows) or Fn ⌥ F11 (Mac) should work.
If it doesn't seek "Developer" tab and "Visual Basic".
If you have any problems you can go to this page:
https://www.techonthenet.com/excel/macros/visual_basic_editor2010.php
There is step-by-step tutorial how to open it.
After you open VBA code screen you have to
press F5 to run
the code (or find "run" button and click it).
2. How this program works? Top
After you run the code with F5, input boxes should appear.
You are asked to define some parameters.
NOTE: DEPENDING ON YOUR EXCEL'S VERSION YOU WANT TO USE "," OR "." - CHECK WHICH ONE WORKS FOR YOU
1. Weapon power of your hero.
You can check it on
www.vaingloryfire.com/vainglory/wiki/heroes
eg. Ringo has weapon power of 66 (+5.9/lvl), which means level 1 Ringo has 66 WP and level 12 Ringo has 66 + 11*5.9 = 131
2. Enemy's armor.
E.g. Ringo's armor is 20 (+6), so 20 on level 1, 86 on level 12. Add bonus from Metal Jacket/other stuff to that
3. Attack speed
eg. Ringo's attack speed is 1 (+0.033/lvl), so it is 1 on level 1, 1.36 on level 12
4. Hero's basic attack cooldown
It's equal to time between two constuctive attacks of hero.
You can't find exact data of this parameter, but in most cases it's around 1.1 - 1.4.
In future I will try to measure it for all heroes.
5. How many WP items you want to have
A number between 1 and 6
6. Specify the items
You do it one by one. So if you want 3 items, you write number, click OK, write number, click OK, write number, click OK.
(7). If you chose Breaking Point you have to specify if your hero is ranged or melee as it influences how stacks are calculated.
After that you should obtain data like these:
3. Math behind this program Top
For all you geeks and testers!
A word about formulas used. You can check them if you want, a code is visible to all of you.
WP
- weapon power as a sum of basic hero's damage (depends on level) and WP from items
-
attack speed is assumed to work like
f(x) = a / x
Where:
-"f(x)" is time between two attacks
-"a" is hero's basic attack cooldown (specify in input box no. 4)
-"x" is hero's attack speed (from hero's level and items).
I base this on my experiments and these articles:
http://brokenmyth.net/attack-cooldowns-a-hidden-hero-statistic/
http://brokenmyth.net/all-about-vainglory-attack-speed/
NOW LET'S LOOK HOW DAMAGE IS CALCULATED STEP-BY-STEP
-Pierce from eg. Tension Bow works like this:
dmg = pierce * WP + (1 - pierce) * WP / (1 + armor)
So % of pierce goes thoroughly through armor. The rest is still affected by armor like usually.
-Shred from eg. Bonesaw:
dmg = WP / (1 + armor - armor * shred)
So just a % of enemy's armor is neglected.
- Critical strikes eg. from Tyrant's Monocle
I assume that if you have eg. 30% of critical strike, then you can split the attack into two parts - 30% of your one and every constructive attack is multiplied by critical damage, 70% is mundane.
dmg = crit_chance * crit_damage * WP / (1 + armor) + (1 - crit_chance) * WP / (1 + armor)
-Tension Bow and Breaking Point
Of course I take into account these! Once every 6 seconds you get extra 180 WP and stacks are calculated after every single attack to modify WP accordingly.
Let's see how formula looks like when you put it altogether!
dmg = pierce * ((crit_chance * crit_damage) * (WP + BP_stacks + Tension_Bow) + (1 - crit_chance) * (WP + BP_stacks + Tension_Bow)) + (1 - pierce) * ((crit_chance * crit_dmg * (WP + BP_stacks + Tension_Bow)) / (1 + armor - shred * armor) + (1 - crit_chance) * (WP + BP_stacks + Tension Bow) / (1 + armor - shred * armor)))
It seem complicated but there are just:
1. Part with pierce (no armor here)
-part with critical
-part without critical
2. Part without pierce (you apply armor shred here)
-part with critical
-part without critical
4. Last word from me Top
Please, give me feedback if it is working properly!
If you see any mistakes, you have any problems, you disagree on formulas - comment!
I'll try to develop this program a bit further. If you have any ideas, comment as well.
Quick Comment () View Comments
You need to log in before commenting.