Program to calculate WP item damage by Phoeking

Program to calculate WP item damage

By: Phoeking
Last Updated: Apr 2, 2017
0 Votes
Rating Pending

Top

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.

Quick Comment () View Comments

You need to log in before commenting.

VaingloryFire is the place to find the perfect build guide to take your game to the next level. Learn how to play a new hero, or fine tune your favorite VG hero’s build and strategy.

Copyright © 2019 VaingloryFire | All Rights Reserved