Releases: drg-tools/drg-weapons-calculator
(Alpha Release) 1.1.2: U35's New Weapons
Hey everyone! I've been hard at work for the past 18 days parsing through gamefiles, running console commands, doing tests, and getting info from the ever-helpful Dagadegatto. I've gotten the majority of the new weapons modeled, and the Mod/OC descriptions in an "ok" state. Because I know that a lot of people are waiting on this release to update the Wiki (or are just curious about how the weapon mechanics work) I've decided to publish this alpha version of the next DPS Calculator release. There are still several things I need to go back and fix in the code, and I haven't done any editing for the Mod/OC descriptions yet so they won't be nearly as "polished" as the rest of the weapons. I fully expect that there will be a few bugs in this release. Please report them to me in the DRG Community Tools discord server in the #bug-reports channel so I can fix them.
There are a couple of requested features that I also want to add to the full release, but their priority is much lower than the new U35 weapons. The full, polished release won't be until after GSG stops hotfixes on U35 (aka "Season 01") so that I can include any balance tweaks made. When I do publish the full version of 1.1.2, this alpha release will be deleted.
Special thanks to:
- Dagadegatto @ GSG for providing info about stuff I couldn't figure out
- Banagement, Elythnwaen, and GreyHound for all the help with dissecting gamefiles
- Eggboy for doing a bunch of testing on Rewiring Mod to figure out the Heat-to-Ammo Regen formula
U35 Balance Changes:
- Driller/Flamethrower/Mod/5/A "Heat Radiance": radius increased from 3m to 4m.
- Driller/CryoCannon/OC "Tuned Cooler": Pressure Gain Rate penalty increased from x0.8 to x0.5.
- Scout/M1000: apparently the base Reload Time has been 2.55 seconds this whole time, not 2.5. (reported by GreyHound and converal #49 )
Updated text:
- Changed the tooltip of Burning status effect to include the Heat/sec that Burning enemies do to nearby enemies
- Driller/Subata/Mod/5/A "Volatile Bullets": updated text to mention that the bonus damage can extend Burn DoT duration
- Gunner/Autocannon/Mod/1/B "High Capacity Magazine": changed wording from +110 to x2 Magazine Size. This change was made on Karl.gg a while ago, apparently I forgot to mirror the change to here. (reported by GreyHound)
- Gunner/Autocannon/OC "Neurotoxin Payload": updated text to mention the 30% Slow that the Neurotoxin Status Effect applies to enemies.
- Gunner/Revolver/OC "Volatile Bullets": updated text to mention that the bonus damage can extend Burn DoT duration.
Fixed bugs:
- Fixed a bug where very, very small values weren't being correctly rounded to zero. (reported by Lunari)
Changed functionality:
- Mirrored the change done in 1.1.0 to how Max Damage gets calculated for Blowthroughs onto DamagePerMagazine() metric, so that it now uses the geometric series. It was an oversight that I forgot at the time, and noticed while working on the new weapons.
- Added "RoF during Burst" to BRT's Stats Panel in the top-left, to mirror the Lok-1's Stats Panel.
Code changes:
- 41 files changed
- 3863 additions
- 55 deletions
1.1.1: Small changes after U34 Hotfixes
This is a very small release, just fixing up some things before U35 arrives with four new weapons. Functionally this is kind of a re-release of 1.1.0 with some small tweaks, so refer to that release for more thorough patch notes.
Depending on when GSG releases the beta branch of U35, I might be able to get 1.1.2 released with the new weapons on launch day? However, it's very possible that 1.1.2 may not come out until a week or two after U35 to catch some of the early hotfixes.
Updated text:
- Fixed two typos in README
Fixed bugs:
- Fixed a bug in Breakpoints() that let very-high-damage attacks bypass Mactera Brundle's Heavy Armor covering its Weakpoint while having an AB of <= 100%. (reported by Lunari)
- Fixed a bug in Breakpoints() where Minigun T5.C "Hot Bullets" was incorrectly modeled as able to ignite Glyphid Swarmers in only one bullet. (reported by Lunari)
Changed functionality:
- Added PGL's new T5.C mod "Disabled Inertia Inhibitor". It doesn't affect any of the metrics or calculations, but now it correctly matches up to what you see in the Equipment Terminal and Karl.gg.
- When U34 refactored how Projectiles work on the netcode, it inadvertently made Breach Cutter OC "Spinning Death" move at 1.5 m/sec, 3x faster than it used to. In 1.1.0 I modeled it using that faster speed, but during the hotfixes they reverted that bug so now I have to revert the change, too. Back down to 0.05 m/sec it goes!
- Changed how Minigun's Cooling Period is calculated. Before I knew about the 0.3 sec Cooling Delay, I created a formula that provided a very close approximation. Since U34 brought that delay to light, I asked Dagadegatto how Cooling works and he said that it's just linear cooling. 3 Heat would take 2.3 seconds to cool at 1.5 Cooling Rate and 0.3 sec delay.
- Changed the delay between bullets during BRT burst from 0.05 sec to 0.08 seconds. Long, long ago before I had access to the console commands and gamefiles, I had to do everything simply from observation. Unfortunately, a video recording at 60 fps led me to incorrectly believe that the burst was at 20 RoF. As a result of that error, BRT's DPS has been over-estimated for the entirety of this program's history so far. Expect to see about 13-18% lower DPS, or 23-27% lower DPS if you equip T5.B which increases burst size from 3 to 6. My apologies for letting this error go unfixed for so long; hopefully this is the only time that will happen.
- M1000 (Hipfired) can now have its Rate of Fire customized, just like Subata, EPC (Regular Shots), Warthog Shotgun, and Revolver. (requested by Lunari)
Code changes:
- 8 files changed
- 58 additions
- 24 deletions
1.1.0: U34 Balance Chages & Build Comparators
Hello everybody! I've been hard at work doing a lot of backend refactoring to make maintenance easier in the future, but I've also managed to add a major new feature: Build Comparators! Having a way to compare the metrics of one build to another was requested all the way back in Day 1, and I finally got them implemented! There are 2 comparators implemented in this release: Metric-to-Metric, and Accuracy Graphs. Metric-to-Metric is very simple; just load the combinations, click the button, and the matrix will automatically fill out and highlight the best values as green. You'll also be able to compare individual Breakpoints and the Stats Panels of the builds, too. Accuracy Graphs is a little more abstract -- it only works with hitscan weapons who have their Accuracy estimated, but it lets you plot their General and Weakpoint Accuracy from 1m to 19m, and see how the 4 DPS metrics affected by Accuracy get affected along the same distance. If you really like the output, you can save it natively to your computer as a PNG; no screencapping required! You'll have to think of the names for those screenshots, though.
Next on the list: U34's balance changes are here! I've been working all week during the Experimental build to get these changes ready for Day 1 of the update. There's a LOT of changes, so I can't wait to see what builds you can come up with! I'm currently planning to let GSG push out more hotfixes with potentially more balance changes, and once the hotfixes are done I'll retroactively delete and re-make this release so that it will be accurate going into the future.
Looking to the future: this is the end of new features being implemented for the DPS Calculator. Everything that I wanted to do, I've done. This major release fixed a lot of backend stuff that makes it really easy for me (or anyone else after me) to maintain and update the program. I'm committed to updating the program when more weapon balance changes happen in DRG, but I don't foresee any more active development of this project unless I feel in the mood to do a couple "nice to have" features. As a symbol of the transition from active development to maintenance, I've incremented the minor version number from .0 to .1. It's a very bittersweet feeling, but I'm proud of what I've made.
Rock and Stone!
-MeatShield
U34 balance changes:
- Burn DoT increased from an average of 13.33 Fire DPS to 15
- Driller/Flamethrower: Damage per Particle increased from 10 to 11
- Driller/Flamethrower/Mod/2/A "Unfiltered Fuel": reduced Damage per Particle from +5 to +4
- Driller/Flamethrower/Mod/4/A "It Burns!": increased Fear Factor per Particle from 0.13 to 0.2
- Driller/Flamethrower/OC "Compact Feed Valves": added +75 Max Fuel bonus and +0.2 Reload Time penalty
- Driller/Flamethrower/OC "Face Melter": increased Damage per Particle from +2 to +4, removed Max Fuel and Movespeed penalties, and added -15 Tank Size and -3m Flame Reach penalties
- Driller/CryoCannon/Mod/3/A "Improved Pump": increased Pressure Gain Rate multiplier from x1.7 to x1.75
- Driller/CryoCannon/OC "Perfectly Tuned Cooler": moved from Clean to Balanced, renamed to "Tuned Cooler", added +0.2 seconds Chargeup Time and x0.8 Pressure Gain Rate penalties
- Driller/CryoCannon/OC "Ice Storm": added bonus 2x damage vs Frozen targets, increased Max Ammo penalty from -50 to -75
- Driller/Subata/Mod/3/B "Recoil Compensator": increased Spread per Shot bonus from -20% to -33%
- Driller/Subata/OC "Chain Hit": increased Weakpoint ricochet chance from 50% to 75%
- Driller/Subata/OC "Tranquilizer Rounds": reduced Rate of Fire penalty from -4 to -2
- Driller/EPC: reduced Heat per Charged Shot from 1.0 to 0.4 (Charged Shots no longer instantly overheat the EPC)
- Driller/EPC: increased time required to charge up a Charged Shot from 1/0.7 to 1/0.6
- Driller/EPC/Mod/2/A "Expanded Plasma Splash": moved to T4.A, value unchanged
- Driller/EPC/Mod/2/C "Reactive Shockwave": moved to T4.C, values unchanged
- Driller/EPC/Mod/4/A "Heat Shield": moved to T2.A, value unchanged
- Driller/EPC/Mod/5/A "Flying Nightmare": added a x1.2 Charged Shot Direct Damage multiplier, AoE Radius penalty increased from x0.55 to x0.4, Charge Speed penalty removed, now allowed to benefit from Frozen.
- Driller/EPC/Mod/5/B "Thin Containment Field": Heat per Charged Shot multiplier increased from x0.25 to x0.8
- Driller/EPC/OC "Heat Pipe": removed Heat per Regular Shot penalty, added 2x Heat Generation while holding a Charged Shot penalty, and x2 Heat per Charged Shot penalty
- Driller/EPC/OC "Overcharger": changed Ammo per Charged Shot penalty from x1.5 to +2
- Driller/EPC/OC "Persistent Plasma": reduced Charged Shot damage penalties from -20/-20 to -15/-15, increased DPS of the Plasma Field left behind from 20 to 35.56, and added a 20% movespeed slow to all enemies damaged by the field.
- Engineer/Shotgun/Mod/2/A "Expanded Ammo Bags": increased Max Ammo from +40 to +42
- Engineer/Shotgun/Mod/3/C "High Capacity Magazine": reduced from +3 to +2
- Engineer/Shotgun/Mod/5/A "Turret Whip": increased Area Damage from 120 to 160, increased Projectile Velocity from 50 m/sec to 75 m/sec, increased AoE Radius from 1.5m to 2m, and reduced the cost from 10 Turret Ammo to 5
- Engineer/Shotgun/OC "Light-Weight Magazines": reduced Max Ammo from +20 to +18
- Engineer/Shotgun/OC "Mini Shells": reduced Max Ammo from +90 to +78
- Engineer/SMG: reduced Recoil Pitch range from [35, 45] to [35, 40]
- Engineer/SMG/OC "Turret Arc": increased duration from 15 seconds to 20, increased max distance from 10m to 15m, increased DPS from 20 to 30, and increased the slow from 70% to 80%
- Engineer/SMG/OC "Turret EM Discharge": increased Area Damage from 40 to 60, reduced Direct Damage penalty from -3 to -2, removed Electrocution chance penalty, and added a -5 Magazine Size penalty
- Engineer/GrenadeLauncher: increased MaxDamageRadius from 1.5m to 2m
- Engineer/GrenadeLauncher: increased Damage Falloff from 15% to 50%
- Engineer/GrenadeLauncher/Mod/1/C "HE Compound": increased Area Damage from +15 to +20
- Engineer/GrenadeLauncher/Mod/2/A "Expanded Ammo Bags": reduced Max Ammo from +3 to +2
- Engineer/GrenadeLauncher/Mod/2/C "High Velocity Grenades": moved to T3.C, value unchanged
- Engineer/GrenadeLauncher/Mod/5/A "Proximity Trigger": added x1.1 AoE Radius bonus
- Engineer/GrenadeLauncher/OC "Compact Rounds": increased Max Ammo from +4 to +5
- Engineer/GrenadeLauncher/OC "RJ250 Compound": added x1.7 Max Ammo bonus and -0.6 sec Reload Time bonus, increased Area Damage "penalty" from -25 to -35
- Engineer/BreachCutter/Mod/3/B "Improved Case Ejector": increased Reload Time bonus from -0.4 to -0.6
- Engineer/BreachCutter/Mod/5/A "Explosive Goodbye": increased DPS of the Plasma Field left behind from 20 to 35.56, and added a 20% movespeed slow to all enemies damaged by the field.
- Engineer/BreachCutter/OC "Spinning Death": increased Damage per Tick from x0.2 to x0.24, increased Projectile Velocity from x0.05 to x0.15 (apparently the velocity change is a bug; expect that to be fixed in an upcoming hotfix)
- Engineer/BreachCutter/OC "Inferno": removed Max Ammo penalty
- Gunner/Minigun: reduced Stun Chance per Pellet from 30% to 20%
- Gunner/Minigun: reduced Spindown Time from 3 seconds to 2
- Gunner/Minigun: reduced Base Spread from 5 to 4.5
- Gunner/Minigun: added a 0.3 second delay before it starts cooling off
- Gunner/Minigun/Mod/1/A "Magnetic Refrigeration": added -0.15 sec cooldown delay
- Gunner/Minigun/Mod/1/C "Improved Platform Stability": reduced Base Spread from x0.2 to x0.25
- Gunner/Minigun/Mod/3/B "Stun Duration": renamed to "Improved Stun", added +20% Stun Chance, and increased Stun Duration from +1 sec to +2
- Gunner/Minigun/Mod/4/C "Magnetic Bearings": reduced Spindown bonus from +3 to +1, and added +0.75 Max Bloom bonus, which functionally increases the time before Minigun loses max stability from 0.5 seconds to 1.25 seconds
- Gunner/Minigun/Mod/5/A "Aggressive Vening": added -5 seconds Overheat duration bonus
- Gunner/Minigun/Mod/5/B "Cold as the Grave": reduced Heat refund per kill from 0.8 to 0.6
- Gunner/Minigun/OC "Bullet Hell": increased ricochet chance from 50% to 75%, and increased the ricochet search distance from 5m to 6m
- Gunner/Minigun/OC "Lead Storm": Stun Chance penalty changed from x0 to x0.25, Stun Duration changed from x0 to x0.5
- Gunner/Autocannon: Min RoF increased from 3 to 3.4
- Gunner/Autocannon: RoF Scaling increased from 0.3 to 0.4
- Gunner/Autocannon/Mod/2/B "Improved Gas System": Min RoF increased from +0.2 to +0.3, Max RoF increased from +1.5 to +2
- Gunner/Autocannon/Mod/2/C "Lighter Barrel Assembly": Min RoF reduced from +1 to +0.6, RoF Scaling reduced from x2 to x1.5
- Gunner/Autocannon/Mod/3/A "Supercharged Feed Mechanism": Min RoF reduced from +0.6 to +0.3
- Gunner/Autocannon/Mod/5/A "Feedback Loop": damage multiplier reduced from x1.2 to x1.1
- Gunner/Autocannon/OC "Carpet Bomber": AoE Radius bonus reduced from +0.7m to +0.6m, Direct Damage penalty increased from -6 to -7
- Gunner/Autocannon/OC "Combat Mobility": Reload Time bonus removed, +0.9 Min RoF bonus added, x1.5 RoF Scaling bonus added
- Gunner/Autocannon/OC "Neurotoxin Payload": DoT proc chance increased from 30% to 50%, AoE Radius bonus increased from +0.3m to +0.6m, Direct Damage penalty reduced from -3 to -2, Area Damage penalty reduced from -6 to -5
- Gunner/Revolver: increased Direct Damage from 50 to 60
- Gunner/Revolver: reduced Max Ammo from 28 to 24
- Gunner/Revolver: increased Weakpoint Bonus from +15% to +25%
- Gunner/Revolver/Mod/2/A "Increased Caliber Rounds": reduced Direct Damage from +15 to +10
- Gunner/Revolver/Mod/3/C "Hollow-Point Bullets": reduced Weakpoint Bonus from +50% to +35%
- Gunner/Revolver/Mod/4/B "High Velocity Rounds": reduced Direct Damage from +15 to +10
- Gunner/Revolver/OC "Homebrew Powder": moved from Clean to Balanced, damage multiplier range ch...
1.0.8: Cleaning up before U34
As I've been working feverishly on some weapon balance ideas to share with GSG before U34 gets too far underway, I've been in contact with several other players. One of them, GreyHound, has forked this repository and pointed out several places in the code where this program doesn't line up with in-game numbers. To that end, I corrected everything he pointed out and did a little rewording of some Mods/OCs.
This is going to be a very minor patch overall, mainly just bugfixes and one requested change. Like I mentioned in 1.0.7, Updates 34 and 35 will be accompanied by large patches to this program, and there's a moderate chance that this will be incremented to 1.1.* instead of more 1.0.* releases.
Updated text:
- Driller/Flamethrower/Mod/5/A "Heat Radiance": changed wording to indicate that the pulse only happens after every full second of firing
- Driller/CryoCannon/Mod/5/B "Cold Radiance": changed wording to indicate that the pulse only happens after every full second of firing
- Engineer/Shotgun/Mod/5/A "Turret Whip": pretty much rewrote this from the ground up, trying to make it convey all that TW does while also improving the flow of the sentences.
- Engineer/SMG/OC/"Turret Arc": changed the wording a little to reflect the 15 second duration on each turret and that the beam is only active while two turrets' 15 second electrocutes overlap.
- Engineer/BreachCutter/Mod/5/A "Explosive Goodbye": GreyHound informed me that there's a 0.4 second delay before players can detonate Explosive Goodbye. I reworded the tooltip to reflect that new information, but how it works in the code is unchanged.
- Scout/M1000/OC "Hoverclock": GreyHound tells me that the Hover effect lasts for 1.5 seconds. Tooltip has been updated accordingly.
- Scout/Zhukovs: updated the weapon long name to capitalize all the letters in "NUK17".
Fixed bugs:
- Driller/EPC/Mod/5/C "Plasma Burn": GreyHound informed me that this isn't a 50% Direct Damage to Heat conversion like all the other Heat mods. Instead, it's 5 Heat + 25% of Regular Shot's Direct Damage. The conversion has been changed, and the tooltip text has been updated accordingly.
- Engineer/Shotgun/Mod/5/A "Turret Whip": along with the rewording of the tooltip, I also fixed a bug in Shotgun's Utility metric where Turret Whip was only doing 0.5 Fear instead of the in-game 1.0 Fear. This has been corrected.
- Scout/GK2: fixed a bug where its Utility metric was not accounting for the weapon's Weakpoint Accuracy, but was instead using a universal average for things like PGL or EPC Charged Shots. As a result of this change, better Weakpoint Accuracy builds will now score a higher Stun Utility score.
- Scout/M1000/Mod/5/B "Precision Terror": GreyHound informed me that this does 2.0 Fear, not 1.0 as I had been led to believe. I fixed that in the Utility metric for Focused Shots model, and updated the tooltip accordingly.
- Scout/Boomstick: fixed a bug where the Pellets per Shot stat was being highlighted as if it was changed by OC "Double Barrel". That was legacy code from when I thought Double Barrel doubled the number of pellets, and has been removed.
Changed functionality:
- Added the Glyphid Menace to the Breakpoints metric (requested by Xantown7, resolves #40 )
- Engineer/GrenadeLauncher: Although its Reload Time is indeed 2 seconds, it takes 2.5 seconds to fire another grenade. This is because of the hidden RoF of 2 which adds a 0.5 sec period before the reload happens. I updated the DPS and firing time metrics of PGL to use the 2.5 second interval (like the game already does), instead of just the 2 second reload.
Added features:
- (none)
Code changes:
- 17 files changed
- 56 additions
- 50 deletions
Proposed Balance Changes (U33 edition)
This is not an official release of this program. Rather, this is a continuation of the thought experiment I started in October 2020 about how I personally would balance DRG's 16 weapons in an attempt to make the vast majority of builds viable instead of only a select few. For insight into what my thoughts were behind the balance changes suggested, download and read the attached PDF.
1.0.7: Closing up the Last Seams
Another large-ish patch for the Calculator -- this should take care of the last few unimplemented Mods/OCs that are able to be modeled, add a few new features, and take care of the vast majority of bugs in the program (at least, all of the bugs that either have been reported or that I've found). Apologies for waiting so long since Update 33 arrived in DRG -- as usual I had been waiting for GSG to finish releasing Hotfixes before I release the next version, but it's the end of February so I'm going ahead with the release even though there's probably another Hotfix or two coming down the line.
With Update 34 promising a large weapon balance pass, and Update 35 promising at least one new weapon for each class, the next patches are probably going to be pretty big too. I'll do my best to get them released closer to the actual update day so that you can have the data available sooner. Additionally, I would like to add a couple of new major features like being able to compare several builds for the same weapon at various distances visually, compare all the stats of two builds directly, etc. I'm hoping to develop those new features in the next few weeks so that when U34 arrives with the weapon balance changes I can just update the numbers accordingly and won't have to crunch. It's very possible that this release will be the last 1.0.*, and the next one might be 1.1.0. If that's the case, then this project will effectively be set to "maintenance" mode where I'll update weapon balance changes as they happen but will no longer actively develop new features.
Updated text:
- Global change: all references to "Heat Damage" and "Cold Damage" have been shortened to just "Heat" and "Cold" respectively to prevent ambiguity
- Global change: all references to DoTs should now list the average DPS that they do (before now, it was inconsistently done)
- Global change: all references to "Spread Variance" and "Current Spread" have been changed to "Max Bloom" and "Current Bloom" respectively. (suggested by TriggerHappyBro)
- Driller/CryoCannon/Mod/1/B: changed name to "Faster Turbine Spinup" to match in-game name
- Driller/CryoCannon/Mod/4/A: changed name to "Hard Mixture" to match in-game name
- Driller/CryoCannon/Mod/4/B: changed name to "Supercooling Mixture" to match in-game name
- Driller/Subata/Mod/5/B: changed name to "Mactera Toxin-Coating" to match in-game name
- Engineer/GrenadeLauncher/Mod/1/B: changed name to "Extra Ammo" to match in-game name
- Engineer/GrenadeLauncher/Mod/2/A: changed name to "Expanded Ammo Bags" to match in-game name
- Engineer/GrenadeLauncher/Mod/5/A "Proximity Trigger": updated this description with info from Dagadegatto
- Engineer/BreachCutter/OC/"Inferno": changed from "deals 75 Heat Damage" to "inflicts 75 Heat"
- Gunner/Autocannon/Mod/4/A: changed name to "Hardened Rounds" to match in-game name
- Gunner/Revolver/Mod/5/B: changed name to "Neurotoxin Coating" to match in-game name
- Scout/Boomstick/Mod/5/C "White Phosphorus Shells": clarified that half of the Direct Damage per Pellet and Area Damage from Blastwave gets converted to Fire element, instead of just calling it Fire damage.
Fixed bugs:
- The two new methods that were written for v1.0.6 to handle all instances of "Avg Time to Ignite/Freeze" had a bug where they would return 0 seconds if Heat/shot >= 5 or Cold/shot >= 20. That has been fixed.
- Updated the ArmorWasting method to make the Direct Damage that breaks a Heavy Armor plate pass through all of the Direct Damage, instead of just the Overkill portion left after breaking the Heavy Armor plate.
- Driller/Flamethrower/Mod/3/B "Sticky Flame Slowdown": fixed a bug where it was only changing the Sticky Flames slow to 50%. In-game, it's 0.5 * 0.9 = 0.45 Movespeed Multiplier, which is actually a 55% slow. (reported by Elythnwaen)
- Driller/Subata/OC/"Explosive Reload": removed legacy code from U31 that let T5.A Volatile Bullets affect the Internal Damage of the detonators. (reported by Lunari)
- Driller/EPC/Mod/5/B "Thin Containment Field": fixed a bug where it was only applying x0.8 Heat per Charged Shot (borrowed from its Heat per Regular Shot) and made it use the real value of x0.25 Heat per Charged Shot.
- Driller/EPC_ChargeShot: DPS now interacts with Frozen and IFG Status Effects as intended
- Driller/EPC_ChargeShot: Breakpoints for "Flying Nightmare" and "Thin Containment Field" now correctly cancel out Area Damage and Direct Damage respectively.
- Driller/EPC_ChargeShot/Mod/5/A "Flying Nightmare": no longer benefits from Frozen Status Effect either in DPS or in Breakpoints. (reported by Lunari)
- Engineer/SMG/Mod/4/B "Conductive Bullets": fixed a bug where equipping this mod made the Electric Damage stat show up as 0, even if EM Refire Booster was not equipped.
- Engineer/GrenadeLauncher/OC/"Hyper Propellant": because I was convinced that its interaction with T3.A "Incendiary Compound" was buggy in U32, I coded it wrong. It should now be correct.
- Engineer/BreachCutter/OC/"High Voltage Crossover": fixed a bug where it would add this OC's Slow utility infinitely until this OC was de-selected. (reported by Lunari)
- Gunner/Autocannon: fixed a logic bug where build
-CA-- + Big Bertha
was getting its Average RoF set to the max RoF. It was an oversight when creating a special condition for build-C--- + Big Bertha
where Min RoF = Max RoF = Avg RoF = 4. - Gunner/Revolver/OC/"Volatile Bullets": fixed a bug where Area Damage from T3.B "Explosive Rounds" was not being multiplied when the Burning Status Effect was enabled. Affects both Primary Target DPS metrics as well as Breakpoints. (reported by Lunari)
- Scout/M1000/OC/"Hipster": while the description correctly stated that it was a x1.75 Max Ammo multiplier, the code itself was just a static +72. This has been fixed and now works as advertised. (reported by GreyHound)
Changed functionality:
- Memoized the General Accuracy and Weakpoint Accuracy metrics so that they only get calculated once per build (this should make bulk actions like Export go a little faster)
- Added metrics "Damage per Magazine/Burst" and "Time to Fire Magazine" to the .csv Export action (for Dukarian)
- Changed Plasma DoT DPS from Electric-element to Fire-element, and updated its tick interval range from [0.25, 0.5] to [0.2, 0.3]. Functionally changed from 13.33 Electric DPS to 20 Fire DPS, and is reflected properly in Breakpoints and mod/OC descriptions.
- Because of the new "customizable rate of fire" feature being implemented for certain weapons, Gunner/Revolver has been consolidated into one model. Click on the button labeled "Set the RoF" to the left of Toggle Status Effects pane to re-enable its Snipe RoF.
- Changed how Revolver and Shotgun calculate their recommended Rates of Fire via setting a goal for Recoil to fall to before firing the next shot. No longer uses the numerical approximation of the Inverse Lambert function; changed to use a binary-search styled while loop.
- Dagadegatto informed me that a Ricochet does not consume any Penetrations, so Minigun and Revolver's "Max Num Targets" metric got updated accordingly
- Updated Cold's Slow Utility Factor from 0.25 (25% slow) to 0.4 (40% slow on average, starting at 0% slow when 0 Cold all the way up to 75-85% slow right before the enemy freezes)
- Added new common enemy types Mactera Tri-Jaw and Mactera Brundle into the weighted average methods for things like Avg Time to Ignite, Avg TTK, etc.
- Updated the "spawn probability vector" that's used for the weighted average dot products to use 33,600 kills achieved in vanialla U33 (was calculated using U31 prior to this change)
- Changed how Rectangular Accuracy is calculated (affects Autocannon, Boomstick, and Zhukovs). Before this change it used a probability approximation that wasn't very good when distance < 3m. In particular, the old model was bugged and could not achieve an accuracy higher than Pi/4 due to the quick-and-dirty formula it used. The new model is much less elegant but also much more correct at all distances. You'll probably notice most of the General Accuracy and Weakpoint Accuracy metrics will change for those three weapons.
- Major redesign of how Breakpoints works under the hood. Similar to Rectangular Accuracy, I ditched the previous attempt to be elegant and used brute force to try to get more accurate numbers. Now it works pretty much the same way that a person would do this calculation by hand for each enemy. During this redesign, I also implemented Light Armor plates breaking instead of doing a permanent x0.8 Direct Damage reduction (and by extension Armor Breaking mods). The most significant change is how this method handles DoTs. The easiest way to conceptualize it is that the method now looks ahead and checks if letting all active DoTs go for their full duration (or 4 seconds, whichever is shorter) will be enough damage to kill the enemy. If so, then it stops counting bullets and moves on to the next creature. If the DoT damage is insufficient to kill an enemy before it ends (or 4 seconds elapses) then it will just remove 1/RoF second's worth of DoT damage from the healthbar and loop to the next shot (as you would expect intuitively). I haven't checked all of the edge cases for all 76,000 combinations, so if you find something that looks wrong feel free to get in contact with me via the DRG Community Tools discord server.
- Driller/CryoCannon/OC/"Ice Spear": added the Ice Spear's Stun to the Utility metric
- Engineer/SMG/OC/"Turret Arc": added more specific information about the electric beam between turrets, and implemented the associated Slow in the Utility metric.
- Gunner/Autocannon: changed Accuracy Estimator's default distance for this weapon from 7m to 6m
- Scout/GK2/OC/"Bullets of Mercy": the Breakpoints method now accounts for this damage boost when Status Effects are enabled
- Scout/Boomstick/OC/"Double Barrel": after some...
1.0.6: Update 32 Balance Changes
This is going to be a relatively minor patch in comparison to 1.0.5. If you were wondering why it took me two weeks to get this version released, the answer is that I chose to delay action until GSG announced that they had finished publishing Hotfixes for Update 32. Besides just being prudent (in case any more balance changes get made), I was also waiting to see if a particular bug got fixed. In-game Hyper Propellant is not having its 385 Direct Damage reduced 50% by T3.A Incendiary Compound, when T5.B Spiky Grenade's 60 Direct Damage and all of the Area Damage is correctly being reduced 50%. The bug report is already in Jira, so hopefully it'll be fixed on the road to U33. I coded this version of the DPS calculator to model the bugged interaction, instead of the intended interaction, so that this is as close to in-game numbers as possible.
Looking to the future: there are only a couple of features and optimizations left to make on this program before it can transition to only being updated when DRG gets balance patches. 1.0.7 will have a couple of those new features, but it's possible that it won't be released until U33 drops depending on how my coding schedule lines up with GSG's release schedule.
Updated text:
- Driller/CryoCannon/Mod/2/A: changed name to match in-game "Larger Reserve Tank"
- Driller/Subata/OC/"Explosive Reload": updated description to match U32 functionality
- Engineer/Shotgun/Mod/5/A "Turret Whip": added an "and" between the Stun and Fear clauses
- Engineer/SMG/OC/"Turret EM Discharge": clarified that the electrical explosion on the Sentry also electrocutes enemies that it damages
- Engineer/BreachCutter/Mod/1/B "High Capacity Magazine": changed description to indicate that it boosts Magazine Size instead of Clip Size
- Scout/M1000/Mod/1/B "Increased Caliber Rounds": changed from x1.2 Direct Damage to +10. The math works out the same with Hipster.
- Scout/M1000/Mod/2/A "Fast-Charging Coils": changed this from a multiplicative bonus to additive
- Scout/M1000/Mod/3/B "Extended Clip": changed description to indicate that this affects Clip Size instead of Magazine Size
Fixed bugs:
- Driller/Subata/OC/"Chain Hit": fixed a bug where it wasn't using the Weakpoint Accuracy to calculate how many ricochets there would be for Max Multi-Target Damage
- Driller/Subata/OC/"Explosive Reload": fixed a bug where ER damage wasn't being accounted for in Average Time-to-Kill
- Driller/EPC (Charged Shots): fixed element distribution percentages in Breakpoints, as well as Flying Nightmare and Thin Containment Field changing the element to be entirely Fire
- Engineer/SMG/Mod/4/A "Hollow-Point Bullets": fixed a bug where the Weakpoint Bonus wasn't being applied properly to the DPS metrics (reported by Asher)
- Engineer/GrenadeLauncher/Mod/4/A "Homebrew Explosive": fixed a bug where it wasn't affecting Direct Damage
- Gunner/Revolver/OC/"Homebrew Powder": fixed a bug where it wasn't affecting Area Damage (reported by Asher)
- Gunner/BRT/Mod/1/C "Blowthrough Rounds": fixed a bug where this mod wasn't doubling the Max Multi-Target Damage (reported by Elythnwaen, resolves #34 )
- Scout/M1000: TriggerHappyBro figured out that it's not a 0.2 Delay before Focused Shots, but rather 1/RoF between Focused Shots. This has been fixed for Focused Shots, and now displays correctly. Hipster no longer has erroneous x0.4 Delay stat, because it was the +3 RoF that was affecting the timing this whole time. (resolves #33 )
Changed functionality:
- Driller/CryoCannon: increased Tank Size from 400 to 500
- Driller/CryoCannon/Mod/1/A "Larger Pressure Chamber": changed x0.5 Pressure Drop Rate to x0.33
- Driller/CryoCannon/Mod/2/A "Larger Reserve Tank": changed +50 Tank Size to +75
- Driller/Subata/OC/"Explosive Reload": changed Area Damage element in Breakpoints from Explosive to Internal, increased damage from 15 to 42, and changed penalties to x0.5 Mag Size and x0.5 Max Ammo
- Driller/EPC: changed Charged Shot Windup from 1.5 to 1/0.7 to match internal value
- Driller/EPC/Mod/5/A "Flying Nightmare": changed x0.7 Charge Speed penalty to x0.8
- Engineer/Shotgun: changed Utility metric "Armor Breaking" to calculate the probability that it breaks a Light Armor Plate using cumulative binomial probability instead of all pellets dealing damage simultaneously
- Engineer/GrenadeLauncher: increased baseline AoE Radius from 2.5m to 3m
- Engineer/GrenadeLauncher: removed baseline 50% Armor Breaking penalty
- Engineer/GrenadeLauncher/Mod/3/A "Incendiary Compound": added 50% Armor Breaking penalty
- Engineer/GrenadeLauncher/Mod/4/B "Nails + Tape": reduced AoE bonus from +1.5m to +1m
- Engineer/GrenadeLauncher/OC/"Hyper Propellant": increased Direct Damage from +250 to +385, changed Direct and Area Damage elements from Explosive to Disintegrate in Breakpoints, and added -2 Max Ammo penalty
- Engineer/BreachCutter: decreased Plasma Beam Width from 2m to 1.5m
- Engineer/BreachCutter: decreased Magazine Size from 4 to 3
- Engineer/BreachCutter: increased Reload Time from 3 to 3.4
- Engineer/BreachCutter/Mod/1/B "High Capacity Magazine": increased bonus from +2 to +3
- Engineer/BreachCutter/Mod/2/A "Expanded Ammo Bags": decreased bonus from +8 to +6
- Engineer/BreachCutter/Mod/2/C "Loosened Node Cohesion": increased bonus from +1m to +1.5m
- Engineer/BreachCutter/Mod/3/B: changed into "Improved Case Ejector", now gives -0.4 Reload Time bonus instead of more width
- Engineer/BreachCutter/OC/"Light-Weight Cases": decreased bonus ammo from +4 to +3
- Engineer/BreachCutter/OC/"Return to Sender": increased max ammo penalty from -4 to -6
- Engineer/BreachCutter/OC/"High Voltage Crossover": changed Magazine Size penalty from -2 to x0.67
- Engineer/BreachCutter/OC/"Spinning Death": added a +1.5m Plasma Beam Width bonus and changed Magazine Size penalty from x0.25 to x0.33
- Engineer/BreachCutter/OC/"Inferno": added 75 Heat on first contact and hidden DoT that does 7 Fire and 7 Heat damage per tick, 2 ticks/sec, 5 sec duration (11 ticks total). The 90% of Damage per Tick no longer just adds Heat, but also converts 90% of Electric element to Fire element. Increased Max Ammo penalty from -4 to -6.
- Gunner/Autocannon/OC/"Combat Mobility": increased the Movespeed Bonus from +15% to +35%, removed the Direct Damage penalty, added a -1 Reload Time bonus, added a x0.7 Base Spread bonus, and added a x0.5 Magazine Size penalty.
- Gunner/Revolver: changed AccuracyEstimator default distance from 7m to 9m
- Scout/GK2/OC/"AI Stability Engine": added a +40% Weakpoint Bonus, and increased the Direct Damage penalty from -1 to -2
- Scout/GK2/OC/"Electrifying Reload": changed Electrocute DoT duration from 3 seconds to 4
- Scout/M1000: changed Focus Shot Charge-up Duration from 0.8 to 1/1.55 to match internal value
- Scout/M1000/Mod/1/A "Expanded Ammo Bags": increased Max Ammo bonus from +32 to +40
- Scout/M1000/Mod/2/A "Fast-Charging Coils": decreased +60% Focus Speed to +30% to compensate for the baseline Focus Shot Charge-up Duration boost from 1/1.25 to 1/1.55
- Scout/M1000/OC/"Active Stability System": removed Focus Shot Multiplier penalty, added +20% Focus Speed bonus, and added a +0.5 Reload Time penalty
- Scout/Boomstick: changed AccuracyEstimator default distance from 5m to 4m
- Scout/Boomstick: changed Breakpoints method to only add the Blastwave damage if AccuracyEstimator is set to <= 4m
- Scout/Boomstick: changed Utility metric "Armor Breaking" to calculate the probability that it breaks a Light Armor Plate using cumulative binomial probability instead of all pellets dealing damage simultaneously
- Scout/Zhukovs: increased Direct Damage from 11 to 12
- Scout/Zhukovs: changed AccuracyEstimator default distance from 5m to 4m
- Scout/Zhukovs/Mod/1/A "Expanded Ammo Bags": increased Max Ammo bonus from +75 to +100
- Scout/Zhukovs/Mod/3/A "Increased Caliber Rounds": decreased Direct Damage bonus from +2 to +1
- Scout/Zhukovs/OC/"Embedded Detonators": changed Area Damage in Breakpoints from Kinetic to Internal, increased damage from 10 to 38, and changed penalties to -6 Direct Damage, -20 Magazine Size, and -400 Max Ammo
- Scout/Zhukovs/OC/"Cryo Minelets": added 0.9 seconds to Average Time to Freeze to represent waiting the 0.1 seconds for the Minelets to form and then 0.8 seconds to arm before they deal the 10 Cold Damage
Added features:
- Global change: refactored how Average Time to Ignite and Average Time to Freeze methods are calculated. Essentially, the change is that instead of doing the "time to ignite/freeze" calculation once using three weighted averages, now it uses a weighted average of all the individual answers. This also lets "bursts" of Temperature changes show their effects a lot better.
- Global change: for all weapons that use AccuracyEstimator, the General Accuracy and Weakpoint Accuracy labels both show the current distance that the Accuracy is being estimated from (requested by Asher)
- Global change: refactored ArmorWasting method to add two new features. Shotguns' pellets are now handled individually, instead of simultaneously (to match Elythnwaen's tests), and U32 changed Armor such that if it gets broken with an Armor Breaking mod equipped, the Direct Damage ignores the Light Armor reduction and overkill of Direct Damage on Heavy Armor gets passed onto the enemy's healthbar.
Code changes:
- 26 files changed
- 581 additions
- 445 deletions
Proposed Balance Changes
This is not an official release of this program. Rather, this is a thought experiment about what changes I would make to DRG's 16 weapons in an attempt to balance them and make most of the builds viable instead of only a select few. For insight into what my thoughts were behind the balance changes suggested, download and read the attached PDF.
1.0.5: Accuracy, Armor, and a Slew of Bugfixes
This is a major update to the program that fixes all of the reported bugs, implements a lot of requested features, and adds a few more things I had in mind. Below is a wall of text that lists every single change, but here's the TL;DR:
Changed Accuracy metrics to use DRG's internal values, added a pop-out Accuracy Visualizer for weapons that use elliptical crosshairs, added a metric to show how much Direct Damage gets wasted by enemies with Armor, and there are now 16 primary-target DPS metrics instead of 4.
I'm planning to release a minor patch, 1.0.6, after U32 is released and all of its hotfixes are applied. There will be a few weapon balance changes that will be implemented in that minor patch. Afterwards, I'll start work on what I hope is the last major patch, 1.0.7. There's a few more things left on my checklist to finish all the functionality that I had in mind when I designed this program (like modeling Recoil in two parts intead of one).
Updated text:
- Global change: all references to Fear and its associated percentages have been changed to use Fear Factor and its decimal representation.
- Global change: changed "Webspitter" to "Web Spitter" and "Acidspitter" to "Acid Spitter" to mirror GSG's change in the Miner's Manual.
- Updated several pieces of text in the Information tabs (still a bit of a work in progress)
- Driller/Flamethrower/Mod/4/A "It Burns!": changed the text to indicate that it does 0.13 Fear Factor per particle, instead of per second of direct contact with the flame stream.
- Driller/Cryo Cannon/OC/"Ice Spear": updated the damage values of the spear itself from 250/125/2.5 to the correct 350/150/1.4
- Driller/EPC/Mod/5/A "Flying Nightmare": changed the icon from Special Star to AoE Radius to match in-game value
- Driller/EPC/Mod/5/B "Thin Containment Field": reworded this mod to indicate that the 240 damage replaces the existing Charged Shot damage, instead of adding to it
- Engineer/Shotgun/Mod/5/A "Turret Whip": updated description to include all the updated values that Elythnwaen found.
- Engineer/Shotgun/OC/"Mini Shells": added text about no longer being able to stun
- Engineer/SMG/Mod/5/B "Electric Arc": updated this description to include the 2.75m radius
- Engineer/SMG/OC/"Turret EM Discharge": added the 40 Electric Damage, 0.5 Fear Factor, and 1.5 second cooldown to this description.
- Gunner/Autocannon/OC/"Neurotoxin Payload": added the 10 second NT DoT duration to this description
- Gunner/BRT/OC/"Electro Minelets": updated this description to explain the 3.9 second lifetime
- Gunner/BRT/OC/"Micro Flechettes": fixed a typo from "Fletchettes" to "Flechettes"
- Scout/GK2/Mod/1/A "Gyro Stabilisation": changed the text from -100% Base Spread to x0 Base Spread. The functionality is unchanged, just matching how Subata's is written.
- Scout/GK2/OC/"AI Stability Engine": changed the x10 Spread Recovery Speed to x2.11 to reflect the
8.1 + 9
internal SRS change - Scout/GK2/OC/"Electrifying Reload": updated the copy/pasted 1000 credit cost to be the correct 7750
- Scout/Classic/OC/"Hoverclock": added a much more robust description of how this works
- Scout/Zhukovs/OC/"Cryo Minelets": updated this description to explain the 3.9 second lifetime
Fixed bugs:
- Driller/Subata: changed T5.A "Volatile Bullets" to add 50% of Direct Damage as Fire element in Breakpoints
- Driller/EPC (Charged Shots): changed Breakpoints to correctly ignore Light Armor when T5.A "Flying Nightmare" is equipped (reported by Asher)
- Driller/EPC (Charged Shots): changed T5.B "Thin Containment Field" to be 240 damage in a 3m radius instead of adding 240 damage to the Area Damage and using the listed AoE Radius (reported by LoneXG, resolves #28 )
- Engineer/Shotgun/OC/"Stunner": fixed a bug where the x1.3 bonus was sometimes overestimated due to truncating shots fired after the stun wears off (replaced with global short condition method)
- Engineer/Breach Cutter: modeled the baseline -70% slow that I wasn't aware of when 1.0.4 was released. (reported by LoneXG, resolves #22 )
- Gunner/Revolver: changed OC "Volatile Bullets" to add 300% of Direct Damage as Fire element in Breakpoints
- Gunner/BRT/OC/"Electro Minelets": fixed a bug where the arming time was just the 0.1 sec creation time, instead of creation time + 0.8 seconds arming time (reported by LoneXG)
- Scout/GK2/Mod/5/B "Battle Cool": fixed a bug where the x12.5 Spread Recovery Speed was sometimes overestimated due to truncating shots after the 1.5 sec duration ended (replaced with global short condition method)
- Scout/GK2/OC/"Bullets of Mercy": fixed a bug where the x1.33 bonus was sometimes overestimated due to truncating shots fired after the stun wears off (replaced with global short condition method)
- Scout/GK2/OC/"AI Stability Engine": corrected the errant x10 Spread Recovery Speed to +9 to match the internal values.
- Scout/Classic/OC/"Hipster": removed erroneous +75% Spread Recovery Speed.
- Scout/Boomstick: fixed a bug where IFG and Frozen Status Effects weren't affecting Damage per Pellet.
- Scout/Boomstick/Mod/5/C "White Phosphorus Shells": this mod converts 50% of Kinetic and Explosive damage into Fire element as well as adding 50% as Heat Damage. (reported by Elythnwaen, resolves #31 )
- Scout/Zhukovs: fixed a bug where Embedded Detonators' damage wasn't being modeled in Additional Target DPS
- Scout/Zhukovs/OC/"Cryo Minelets": fixed a bug where the arming time was just the 0.1 sec creation time, instead of creation time + 0.8 seconds arming time (reported by LoneXG)
- Scout/Zhukovs/OC/"Embedded Detonators": changed element from Explosive to Kinetic
Changed functionality:
- Re-ordered the metrics both in the bottom of the GUI as well as the .csv and .sql outputs
- Refactored the auto-calculator to be a little more efficient in how it does its calculations
- Refactored how all Weapons organize their primary-target DPS methods, which makes it easier to access and use around the rest of the program.
- There are now only 2 DPS metrics in the top row, Burst and Sustained. To the right of these are 3 buttons that allow you to enable Weakpoint Bonus damage, enable missing shots due to General Accuracy, and enable reducing Direct Damage by ArmorWasting.
- Breakpoints method now accounts for Frozen and IFG Status Effects being enabled on the Weapon. (Suggested by Drillboy Jenkins, resolves #30 )
- Converted AccuracyEstimator to use internal values from DRG, instead of measured pixels from my U29.7 tests. It also is an instantiable object now instead of a static method group.
- Implemented the 4 Spread Curves shared by Dagadegatto for Minigun, Revolver, GK2, and M1000
- Changed how Recoil per Shot is modeled from two linear equations into a Critically Damped Harmonic Oscillator function
- Changed AccuracyEstimator's default distance to be specific to each weapon: 5m for Boomstick and Zhukovs, 7m for Shotgun, SMG, Minigun, Autocannon and Revolver, and 10m for Subata, BRT, GK2, and M1000 (Hipfired)
- Created two methods to globally model long conditional effects like Autocannon T5.A x1.2 damage and short conditional effects like GK2 T5.B x12.5 Spread Recovery Speed, and replaced unique instances with these two global ones.
- Increased Grunt minimum hitbox radius from 0.4 to 0.41, and overlappable hitbox radius from 0.9 to 0.97. These are both "prime" decimal numbers so there should be more distinct changes between small AoE radius changes. Additionally the larger packing radius slightly nerfs the max num targets for large AoE radii like Fat Boy.
- Driller/Cryo Cannon: it has come to my attention that the particles from the Cryo Cannon do NOT get damage-boosted while hitting Frozen targets, so I removed that damage multiplier from the DPS and Max Damage calculations. The average multiplier is still listed in the top-left panel, but it no longer affects numbers.
- Engineer/Shotgun now uses its General Accuracy as a raw scalar instead of rounding number of pellets to nearest integer in both DPS calculations and Breakpoints
- Engineer/SMG/Mod/4/B "Conductive Bullets": this multiplier now gets applied at the Damage per bullet phase, which means that the dmg/bullet shown in the top left will reflect the multiplier being active. (suggested by Dukarian)
- Engineer/SMG/Mod/5/B "Electric Arc": the Max Num Targets shows what the targets hit by the 2.75m radius would be if T5.B procs (resolves #26 )
- Engineer/Grenade Launcher/Mod/4/C "Concussive Blast": after doing research into how the Fear mechanic works, I realized that Feared enemies don't lose the Fear Status Effect while stunned. As a result, T4.C now adds its utility score to the baseline Fear instead of replacing it.
- Engineer/Breach Cutter: after consulting with ArcticEcho, I changed the estimate of how many Grunts are hit by the beam's width simultaneously from
1 + 2 * ceil(width/2)
towidth + 1
- Gunner/Minigun/Mod/4/A "Variable Chamber Pressure": this multiplier now gets applied at the Damage per Pellet phase, which means that the dmg/bullet shown in the top left will reflect the multiplier being active. This should help explain some of the counter-intuitive behaviors like why RoF changes affect Breakpoints. (suggested by Dukarian)
- Gunner/Autocannon/Mod/2/A "Tighter Barrel Alignment": changed this from a wonky -30% to x0.7 to reflect internal values.
- Gunner/Autocannon/Mod/4/A "Feedback Loop": this multiplier now gets applied at the Damage per bullet phase, which means that both Direct Damage and Area Damage will reflect the multiplier being active. (suggested by Dukarian)
- Gunner/Autocannon/OC/"Big Bertha": changed this from a wonky -30% to x0.7 to reflect internal values.
- Gunner/Revolver/OC/"Elephant Rounds": changed the recoil increase from x2.5 to x1.5 to reflect how Recoil Pitch and Recoil Yaw get affected, and added the x1.5 Spread Variance and +3.5 Mass hidden downsides
- Scout/Classic/Mod/2/B "Better Weight Bala...
1.0.4: Bugfixes + New Features
Hopefully this will be the last release until DRG's next weapon balance patch. This should fix all of the outstanding bugs and add a couple of highly-requested features.
Fixed bugs:
- Driller/Flamethrower/Mod/5/Heat Radiance: Modeled its 80 Fire DPS (Thanks Rauliken and EvanByrd for reporting this; #11 and #19 )
- Driller/Subata/Mod/5/Volatile Bullets: Added its +50% Direct Damage to Breakpoints when Burning Status Effect is enabled
- Gunner/Autocannon/OC/Neurotoxin Payload: This DoT was active all the time for Breakpoint calculations. Now only on when OC is selected.
- Gunner/Revolver/Mod/5/Glyphid Neurotoxin Coating: This DoT was active all the time for Breakpoint calculations. Now only on when Mod is selected. (Thanks Bilbo_Einstein for finding this #20 )
- Gunner/Revolver/OC/Volatile Bullets: Added its +300% Direct Damage to Breakpoints when Burning Status Effect is enabled (Thanks Bilbo_Einstein for finding this #20 )
- Scout/Classic/OC/Hipster: Implemented its -60% Delay Before Focusing (Thanks LoneXG for telling me about this #16 )
Changed functionality:
- Changed how Homebrew Powder has its value calculated from discrete sum to integral. New value is the intuitive 1.1. (Thanks to Omega Sentinel for questioning the old 1.1138 value)
- Changed how images get compressed from Java's built-in methods to Thumbnailator
- Changed ToolTips' delay from 0.75 -> 0.25 seconds and duration from 4 -> 10 seconds (Thanks to MarHelmer for the suggestion #17 )
- Added associated Icons to StatsRows both on the left side of the GUI and in the Utility Breakdown pop-up (Thanks to LoneXG for this suggestion #15 )
Added features:
- Added a checkbox in the "Best Combinations (All)" menu that will find the selected Best Metric for all 20 models in sequence, instead of having to do it manually for all 20 (Thanks to MarHelmer for this suggestion #12 )
- Added ability to right-click a Mod or Overclock to have it be "ignored" by "Best Combinations (Subset)" actions. Right-clicking will automatically un-select a Mod or Overclock if it's currently Selected, and paint it with a translucent red to indicate that it will be Ignored. Right-clicking again will remove the Ignored status and return it to default. Selecting an Ignored Mod or Overclock with left-click will automatically remove the Ignored status and change the selection at that tier as expected. "Best Combinations (All)" will still iterate over all Mods and Overclocks, regardless of Selected or Ignored statuses. Additionally, due to how the auto-calculator works in the background all Mods and Overclocks will lose their Ignored status during (All) calculation, but will maintain it during the (Subset) calculation. (Thanks to MarHelmer for this suggestion #14 )
Code changes:
- 41 files changed
- 1463 insertions
- 1305 deletions