Brotato

Brotato

161 ratings
[GUI] DPS Display
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
7.746 KB
6 Jan @ 5:40pm
23 Feb @ 12:31pm
17 Change Notes ( view )

Subscribe to download
[GUI] DPS Display

Description
This mod predicts and displays the average DPS for all weapons and compares them with their base DPS, assuming that the weapon is used to its fullest potential. As the DPS is calculated based on hitting as many enemies as possible, it will be higher than what could usually be archived but should give you a great comparison between different weapons and help when deciding purchases. And since I show how much the current DPS has improved in comparison to the base DPS you'll always know exactly how much you improved the strength of your weapons.

Every stat and effect in the base game should be fully accounted for with the exception of explosion damage and melee weapon piercing. DPS for turrets will be added soon.

Burn DPS is shown as two separate stats: "Burn DPS per stack" shows how much damage a burning enemy will take per second while "Maximum Burn DPS" shows the average Burn DPS that you would archive by having the maximum possible amount of simultaneously burning enemies. Please note: the "Maximum Burn DPS" factors in burn-chance and attack speed and can therefore be lower than the "Burn Damage per Stack". Also with piercing, spread and fast attack speed the "Maximum Burn DPS" will quickly become far from achievable as burn damage does not stack and you could therefore only archive the max by making a new enemy burn with every single (piercing) bullet and spread effect.

I did all the calculations myself so please let me know if something feels off.
The source code to this mod is available at: https://github.com/bene-labs/Brotato-WeaponDpsDisplay.


-- Update Version 0.2 --
- Fixed crit-damage calculation.
- Fixed "extra_cooldown_every_x_shots" effect calculation
- Fixed a bug which messed with the turret damage scaling.

-- Update Version 0.3 --
- Fixed the DPS to base-DPS comparison
- Added snake and eye-surgery support
- Split Burn Damage DPS into Maximum and "Per-Stack" DPS to better represent how burn damage works

-- Update Version 0.4 --
- Improved bounce and pierce calculation
- Improved bounce_on_crit and pierce_on_crit calculation
- Added "stand-still" DPS and support for all related effects

Special Thanks to ArosRising! :)
10 Comments
雪下 30 Jul @ 8:15am 
hello guy, try this one out

if (piercing > 0) {
dps *= Math.log(piercing + 1) + 1 / piercing;
}

in this example, when piercing is 1, dps will be multiplied by 1.6931471805599454, but when dps is 100, it will only be multiplied by 4.605170185988092
Bene  [author] 21 Jul @ 5:25am 
I could offer an option to show the DPS without piercing but otherwise I'm not sure how else to calculate piercing DPS
Bene  [author] 21 Jul @ 5:22am 
It's the highest DPS possible, so for piercing weapons it shows what you would get if you hit the maximum amount of enemies you could with piercing. So piercing 99 is not really achievable of course as you would need to hit 99 enemies
雪下 21 Jul @ 2:14am 
actually, the DPS displayed by the obliteracto on the UI is more than ten times that of the laser gun
雪下 21 Jul @ 2:11am 
the DPS of the obliteractor a bit too high, is there any problem?
Herbicide Jones 23 Jun @ 1:32pm 
nice but simple addition
Bene  [author] 22 Feb @ 6:08am 
@KLeinKARIERT Keine Sorge, du kannst auch mit der mod noch alle Errungschaften freischalten. Ist eigentlich bei den meisten mods der Fall.
Köttbulla 21 Feb @ 12:28pm 
errungschaften können damit aber noch gewonnen werden oder?
Bene  [author] 6 Feb @ 1:41pm 
:D
christianxys 6 Feb @ 1:10pm 
Baba