Jump to content
Dante Unbound: Share Bug Reports and Feedback Here! ×
  • 1

[Unofficial] Weapon Dps Calculator (Current V0.5.4)


GottFaust
 Share

Question

Hello Tenno, I have a useful little tool for you.

This calculator will allow you to try out weapon mod builds, compare weapons againts different factions and enemy types, manage your own user-created mods, and explore a complete stat-set containing Damage per Shot, Damage Per Second, Burst Damage, and Time-To-Kill values in an easy-to-use easy-to-read UI.

The user will need to enter the basic gun attributes as DE changes those so often that maintaining that info locally would prove to be a pain. The Wiki page is an excellent source of the required attributes. You can find it at: http://warframe.wikia.com/wiki/WARFRAME_Wiki if you didn't already know. If you have any questions about an individual field and what it means, just hover your mouse over it and a description with any pertinent information will be displayed as a tool-tip.

Version: 0.5.4

  • Fixed a major bug with DoTs and TTK
  • Fixed a typo in Stunning Speed
Version: 0.5.3
  • Updated to reflect U12 changes
Download Links

Executable JAR file:

https://drive.google.com/file/d/0B6EdgMHjBhOHX0F1TElRS0FQaTQ/edit?usp=sharing

Just double-click it like you would any EXE. The default mod database is generated at the location you run the app from if it doesn't exist there already.

Source Code:

https://drive.google.com/file/d/0B6EdgMHjBhOHSGpCRV9oblU2VE0/edit?usp=sharing

Because why shouldn't the community have the source code?

Example Saved File:

https://drive.google.com/file/d/0B6EdgMHjBhOHTkEyMFJobWZsVzQ/edit?usp=sharing

Requirements

  • Java 1.7
What it Does:
  • Supports Damage 2.0
  • Supports Rifles(including bows/snipers), Pistols, and Shotgun weapon types.
  • Calculates detailed Damage and Damage-per-Second information based on entered weapon attributes and selected mods.
  • Calculates the time required to kill a Heavy Gunner, Toxic Ancient, Corpus Tech, and Fusion Moa to allow for representation of the effects of procs such as Viral's max-health-drop.
  • Displays this information in an easy to read text format in a field that allows easy copying of said information for use elsewhere.
  • Maintains said information across calculations for easy comparison of builds for people how like to min-max.
  • Displays DPS values in an easy-to-read graph form and maintains the previous calculation for easy comparisons.
  • Allows saving and loading of weapon configurations to allow storing and sharing of builds.
  • Provides a tool to allow users to edit, delete, and add mods to the local Mod Database.
  • Calculates and displays mod costs and mod costs totals for use in build-planning.
  • Allows the user to edit the polarity of a given mod slot to support planning of weapon polarizations.
Future Enhancements
  • Melee Weapon DPS (Waiting on "Melee 2.0" currently scheduled for Update 12)
Setup Example

BOQO88b.png

Mod Manager Example

j5q9KX6.png

Changes made to current mods, deletions, and additions will be local until comitted to the database through the save button. This will allow the user to experiment without actually messing up the mod database. If for some reason you still manage to mess it up, just delete the mods.db file and re-launch the calculator. It will create a new one for you.

Example Output

_____________________________________________________________

Name :: Synapse

Magazine Size :: 100

Total Ammo :: 640

Crit Chance :: 125%

Crit Damage Multiplier :: 560%

Fire Rate :: 4 rounds per second

Reload Time :: 1.5 seconds

Status Chance :: 14%

Projectiles Per Shot :: 1.9

Status Procs Per Second :: 0.452

Burst Status Procs Per Second :: 0.56

Time to Empty magazine :: 6.25 seconds

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Raw Damage Per Shot :: 924.16

Electric Damage Per Shot :: 924.16

Damage Per Shot to Clone Flesh :: 924.16

Damage Per Shot to Ferrite Armor :: 924.16

Damage Per Shot to Alloy Armor :: 462.08

Damage Per Shot to Mechanical :: 1386.24

Damage Per Shot to Corpus Flesh :: 924.16

Damage Per Shot to Shield :: 924.16

Damage Per Shot to Proto Shield :: 924.16

Damage Per Shot to Robotic :: 1386.24

Damage Per Shot to Infested Flesh :: 924.16

Damage Per Shot to Fossilized :: 924.16

Damage Per Shot to Sinew :: 924.16

Damage Per Shot to Corpus :: 924.16

Damage Per Shot to Grineer :: 924.16

Damage Per Shot to Infested :: 924.16

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Raw Crit Damage Per Shot :: 5175.296

Electric Crit Damage Per Shot :: 5175.296

Crit Damage Per Shot to Clone Flesh :: 5175.296

Crit Damage Per Shot to Ferrite Armor :: 5175.296

Crit Damage Per Shot to Alloy Armor :: 2587.648

Crit Damage Per Shot to Mechanical :: 7762.944

Crit Damage Per Shot to Corpus Flesh :: 5175.296

Crit Damage Per Shot to Shield :: 5175.296

Crit Damage Per Shot to Proto Shield :: 5175.296

Crit Damage Per Shot to Robotic :: 7762.944

Crit Damage Per Shot to Infested Flesh :: 5175.296

Crit Damage Per Shot to Fossilized :: 5175.296

Crit Damage Per Shot to Sinew :: 5175.296

Crit Damage Per Shot to Corpus :: 5175.296

Crit Damage Per Shot to Grineer :: 5175.296

Crit Damage Per Shot to Infested :: 5175.296

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Raw Damage Per Second :: 16694.503

Damage Per Second to Clone Flesh :: 16694.503

Damage Per Second to Ferrite Armor :: 16694.503

Damage Per Second to Alloy Armor :: 8347.252

Damage Per Second to Mechanical :: 25041.755

Damage Per Second to Corpus Flesh :: 16694.503

Damage Per Second to Shield :: 16694.503

Damage Per Second to Proto Shield :: 16694.503

Damage Per Second to Robotic :: 25041.755

Damage Per Second to Infested Flesh :: 16694.503

Damage Per Second to Fossilized :: 16694.503

Damage Per Second to Sinew :: 16694.503

Damage Per Second to Corpus :: 16694.503

Damage Per Second to Grineer :: 16694.503

Damage Per Second to Infested :: 16694.503

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Raw Burst Damage Per Second :: 20701.184

Burst Damage Per Second to Clone Flesh :: 20701.184

Burst Damage Per Second to Ferrite Armor :: 20701.184

Burst Damage Per Second to Alloy Armor :: 10350.592

Burst Damage Per Second to Mechanical :: 31051.776

Burst Damage Per Second to Corpus Flesh :: 20701.184

Burst Damage Per Second to Shield :: 20701.184

Burst Damage Per Second to Proto Shield :: 20701.184

Burst Damage Per Second to Robotic :: 31051.776

Burst Damage Per Second to Infested Flesh :: 20701.184

Burst Damage Per Second to Fossilized :: 20701.184

Burst Damage Per Second to Sinew :: 20701.184

Burst Damage Per Second to Corpus :: 20701.184

Burst Damage Per Second to Grineer :: 20701.184

Burst Damage Per Second to Infested :: 20701.184

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Time to Kill a lvl 100 Heavy Gunner :: 42.5 seconds

Time to Kill a lvl 100 Toxic Ancient :: 1.75 seconds

Time to Kill a lvl 100 Corpus Tech :: 3.75 seconds

Time to Kill a lvl 100 Fusion Moa :: 2.25 seconds

Old Versions

Version 0.5.3

JAR:https://drive.google.com/file/d/0B6EdgMHjBhOHR1QwUjhGMGQ3N00/edit?usp=sharing

Source:https://drive.google.com/file/d/0B6EdgMHjBhOHemdGWnNJelJyZVU/edit?usp=sharing

Version 0.5.2

JAR:https://drive.google.com/file/d/0B6EdgMHjBhOHNkJvZ3JwSTFqaE0/edit?usp=sharing

Source:https://drive.google.com/file/d/0B6EdgMHjBhOHSW94NkgxdjlUMGc/edit?usp=sharing

Version 0.5.1

JAR:https://drive.google.com/file/d/0B6EdgMHjBhOHRmtmYTVhSDhDbUk/edit?usp=sharing

Source:https://drive.google.com/file/d/0B6EdgMHjBhOHS2VES2RCaTItSzQ/edit?usp=sharing

Version 0.5.0

JAR:https://drive.google.com/file/d/0B6EdgMHjBhOHUklkYmdfT1pUSms/edit?usp=sharing

Source:https://drive.google.com/file/d/0B6EdgMHjBhOHcWFscUU3U0cxTVE/edit?usp=sharing

Version 0.4.3

JAR:https://drive.google.com/file/d/0B6EdgMHjBhOHQUR3cG5vTlYyZWs/edit?usp=sharing

Source:https://drive.google.com/file/d/0B6EdgMHjBhOHdHJqRHNha2FSanc/edit?usp=sharing

Version 0.4.2

JAR:https://drive.google.com/file/d/0B6EdgMHjBhOHRmlpWTlFUnNoTFE/edit?usp=sharing

Source:https://drive.google.com/file/d/0B6EdgMHjBhOHcUh4dTNuV1ZaRE0/edit?usp=sharing

Version 0.4.1

JAR:https://docs.google.com/file/d/0B6EdgMHjBhOHQXhyUVB5NFVQMzA/edit?usp=sharing

Source:https://docs.google.com/file/d/0B6EdgMHjBhOHRTBEM0s5eGJSQXc/edit?usp=sharing

Version 0.4

JAR:https://docs.google.com/file/d/0B6EdgMHjBhOHN09lX1BXMmR2Ylk/edit?usp=sharing

Source:https://docs.google.com/file/d/0B6EdgMHjBhOHWlNGSHhkMkJmQTA/edit?usp=sharing

Version 0.3.2

JAR:https://docs.google.com/file/d/0B6EdgMHjBhOHYkU1YUJiQ2xLV3M/edit?usp=sharing

Source:https://docs.google.com/file/d/0B6EdgMHjBhOHTWNUZE9ybzlRakk/edit?usp=sharing

Version 0.3.1

JAR:https://docs.google.com/file/d/0B6EdgMHjBhOHbE9uZVZOT1dWUnM/edit?usp=sharing

Source:https://docs.google.com/file/d/0B6EdgMHjBhOHWHlDQUo2dHgtS28/edit?usp=sharing

Version 0.3

JAR: https://docs.google.com/file/d/0B6EdgMHjBhOHMENKOGFpd3lKYkk/edit?usp=sharing

Source: https://docs.google.com/file/d/0B6EdgMHjBhOHYlQwbDhRcDEwT1E/edit?usp=sharing

Version 0.2

JAR: https://docs.google.com/file/d/0B6EdgMHjBhOHWW5nbG9hcDZQRXM/edit?usp=sharing

Source: https://docs.google.com/file/d/0B6EdgMHjBhOHemxleFY5clNFbk0/edit?usp=sharing

Version 0.1

JAR: https://docs.google.com/file/d/0B6EdgMHjBhOHTVJrNDZMYlNBeFU/edit?usp=sharing

Source: https://docs.google.com/file/d/0B6EdgMHjBhOHNFZiVEo3eDRoNk0/edit?usp=sharing

I hope you enjoy it, and happy hunting!

Edited by GottFaust
Link to comment
Share on other sites

Recommended Posts

  • 0

Just in case you're interested in making the calculator even more accurate, Mad5scout and Rmosley753 tested and figured out the order of operations and rounding for damage calculations: http://warframe.wikia.com/wiki/User_blog:Mad5cout/Warframe_Damage_Calculation_Research

They also have some research going on for critical hits: http://warframe.wikia.com/wiki/User_blog:Mad5cout/Critical_Damage_Research

 

 

If you do calculate it in a different order and don't round (or round at the end), it doesn't make a big difference though.

Edited by CitizenV
Link to comment
Share on other sites

  • 0

Just in case you're interested in making the calculator even more accurate, Mad5scout and Rmosley753 tested and figured out the order of operations and rounding for damage calculations: http://warframe.wikia.com/wiki/User_blog:Mad5cout/Warframe_Damage_Calculation_Research

They also have some research going on for critical hits: http://warframe.wikia.com/wiki/User_blog:Mad5cout/Critical_Damage_Research

If you do calculate it in a different order and don't round (or round at the end), it doesn't make a big difference though.

As far as I can tell, the rounding portion is only for display. I'll do more research on the matter however. If it is done, it's an extremely inefficient and uncommon way to go about it. Hence my skepticism.

As to the OOP I'll check that out, but at a cursory glance seems to match mine.

Edit - Upon examination of his data-sets his crit and damage formulas return incorrect values nearly 50% of the time, and usually off by just enough to indicate that he's losing precision via rounding. This supports my statement that any rounding is only for display purposes.

Edit 2 - My OOP is exactly identical to his, so no changes needed their either. Overall this is interesting information, but he's making some bad assumptions (namely assuming that the output format indicates the processing format) and it's nothing I haven't tested out already.

Thanks for bringing it to my attention regardless.

Edited by GottFaust
Link to comment
Share on other sites

  • 0

As far as I can tell, the rounding portion is only for display. I'll do more research on the matter however. If it is done, it's an extremely inefficient and uncommon way to go about it. Hence my skepticism.

As to the OOP I'll check that out, but at a cursory glance seems to match mine.

Edit - Upon examination of his data-sets his crit and damage formulas return incorrect values nearly 50% of the time, and usually off by just enough to indicate that he's losing precision via rounding. This supports my statement that any rounding is only for display purposes.

Edit 2 - My OOP is exactly identical to his, so no changes needed their either. Overall this is interesting information, but he's making some bad assumptions (namely assuming that the output format indicates the processing format) and it's nothing I haven't tested out already.

Thanks for bringing it to my attention regardless.

Hm, that is a good point. Energy functions in that way, where the energy bar displays rounded values but there's actually no rounding going on when calculating reduced energy costs when you have Power Efficiency mods. Damage could very well be done in the same way.

 

EDIT: Ok, so I talked to him and he was fairly sure it does round (he also tests things fairly thoroughly as you may have seen in those research blogs). I then tested it in-game myself, and my results also suggest that it does:

 

I used a Braton Prime with rank 2 Serration. That's 25 * 1.3 = 32.5 damage -> 32 damage (rounded down).

 

My friend had a Frost with 450 shields. I shot him 5 times with it, and it did 32 damage each time:

450, 418, 386, 354, 322, 290

 

If there was not any rounding, we would have definitely seen it on the shield display. If damage was not rounded, but shields were rounded down (has to be some sort of rounding on the display), it would have shown:

450, 417, 385, 352, 320,  287 (alternating 33 and 32 damage)

 

If shields were rounded up, or rounded to the nearest integer:

450, 418, 385, 353, 320, 288 (alternating 32 and 33 damage)

Edited by CitizenV
Link to comment
Share on other sites

  • 0

Hm, that is a good point. Energy functions in that way, where the energy bar displays rounded values but there's actually no rounding going on when calculating reduced energy costs when you have Power Efficiency mods. Damage could very well be done in the same way.

 

EDIT: Ok, so I talked to him and he was fairly sure it does round (he also tests things fairly thoroughly as you may have seen in those research blogs). I then tested it in-game myself, and my results also suggest that it does:

 

I used a Braton Prime with rank 2 Serration. That's 25 * 1.3 = 32.5 damage -> 32 damage (rounded down).

 

My friend had a Frost with 450 shields. I shot him 5 times with it, and it did 32 damage each time:

450, 418, 386, 354, 322, 290

 

If there was not any rounding, we would have definitely seen it on the shield display. If damage was not rounded, but shields were rounded down (has to be some sort of rounding on the display), it would have shown:

450, 417, 385, 352, 320,  287 (alternating 33 and 32 damage)

 

If shields were rounded up, or rounded to the nearest integer:

450, 418, 385, 353, 320, 288 (alternating 32 and 33 damage)

After some extensive testing it appears that something weird is going on here. I can't seem to get results consistent with rounding or not rounding at all. Some fit, most do not.

However, given the hints via Twitter that U10 may launch this friday, I'll hold off trying to figure out exactly what they are doing until we see what Steve changes with the new formula.

Link to comment
Share on other sites

  • 0

Yeah that is a good idea. They could change everything completely D:. I'm not looking forward to having to trying to figure stuff out again, especially since Pwnatron hasn't been updating.

You and me both. I get the feeling that I may have to rewrite my entire calc.

Link to comment
Share on other sites

  • 0

After some extensive testing it appears that something weird is going on here. I can't seem to get results consistent with rounding or not rounding at all. Some fit, most do not.

Getting the right order of rounding is important, as an incorrect formula can return good results most but not all of the time.

 

Though, if your damage calculator is still using approximations for enemy resistances, complete accuracy isn't really essential.

If it were... I'm curious how the game handles weapons where the fire rate isn't precisely divisible to the frame rate or internal clock.

Link to comment
Share on other sites

  • 0

Getting the right order of rounding is important, as an incorrect formula can return good results most but not all of the time.

Though, if your damage calculator is still using approximations for enemy resistances, complete accuracy isn't really essential.

If it were... I'm curious how the game handles weapons where the fire rate isn't precisely divisible to the frame rate or internal clock.

I was able to get extremely close by doing no rounding what-so-ever until the very end and then doing a direct integer cast. Basically: don't round at all until you go to actually apply the damage and then simply trunkate all decimal points. It probably won't make a huge difference however considering how it's likely to change completely later today.

Considering that very few games use framerate-based internal clocks anymore and they have gone out of their way to make the fire rate frame-rate independent it probably doesn't matter. If it does have an internal clock with a precision worse than a millisecond the most common way of handling that is to slate it to the closest slot and throw out any precision past that.

As to resistances and armor: they were removed from the calc early on due to the announcement of the complete damage/armor overhaul that we'll be getting later today. I'll be attempting to figure out the new system completely before I update the calc.

Edit - I really shouldn't post before I've had my coffee...

Edited by GottFaust
Link to comment
Share on other sites

  • 0

First I wanted to say awesome program I love it. This may sound silly but when I put info into it which Damage should I be looking at? I know there's Crit Damage, but then there's average damage, dps, average dps and so on. Which ones should I care about the most out of all the info it provides?

Link to comment
Share on other sites

  • 0

First I wanted to say awesome program I love it. This may sound silly but when I put info into it which Damage should I be looking at? I know there's Crit Damage, but then there's average damage, dps, average dps and so on. Which ones should I care about the most out of all the info it provides?

Average Damage - Weighted average between critical and non-critical damage.

Damage per Mag - Total damage dealt before reloading.

DPS - Aggregate damage per second. It factors the the raw (burst) damage per second, magazine size, and reloads.

Burst DPS - Damage per second not factoring reloads.

What you should be looking for varies greatly depending on what you want out of a weapon.

Edited by GottFaust
Link to comment
Share on other sites

  • 0

Small update to add Corrupted Mods.

Still waiting on Damage/Armor 2.0 to do any serious development, but I figured it's taking long enough to release that I should keep it up to date on mods in the mean time.

Also: Only Heavy Caliber and Magnum Force actually result in a net DPS gain, and they're only good on the Ignis, Synapse, Flux and Embolist respectively due to the massive accuracy drop. Note that Critical Delay results in a major loss of DPS on the Vectis due to it taking up a more useful mod slot and the fact that the Vecits' fire rate dictates the delay between the shot and when reloading starts.

Edited by GottFaust
Link to comment
Share on other sites

  • 0

for some reason, adding seeker (pistol puncture) doesn't allow it to calculate. removing it fixes things.

Nice catch. Fixed and uploaded without a version change. Re-download it and it should work now.

I had the word "Seeker" as seeker's mod power base. Turns out the word Seeker doesn't parse out as an acceptable double.

Edited by GottFaust
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...