Yes, I talk too much, on to the program.
The program is a tool, and is heavily vulnerable to garbage in garbage out. It shows eight range bands of arbitrary depth, as defined by the Range Interval. Each band lists the angular velocity in milliradians and the eHP of damage passing through that band at the specified closing speed. The transverse and closing speeds are computed automatically by the approach angle and attack ship speed. The angle is defined by the angle between the enemy and the attack craft's angle of travel, with 0 being a direct plunge at the target and 90 being a circular orbit.
Most other parameters are straightforward, but the acceptable tank damage is a simple number for damage. If you're willing to take 500 points of damage, list it as 500. If you are willing to lose your entire 500 point shield, will be facing only kinetic weapons, and have 50% kinetic resist, set this value to 1,000.
Data readout under the bands lists the hit chance, the probable number of hits (Shots*hit chance), the effective DPS as computed by the link above, the alpha strike damage (150% base, maximum standard damage, more likely if chance to hit is higher), a wrecking strike damage (1% chance, automatic triple base damage), and the time to kill as determined by Tank/(DPS-Heal). A stable TTK output denotes healing faster than damage is being applied. It is not a promise of a lucky hit not coring the ship due to peak damage.
You can find the HTML5 version here. It does not play well with mobile. Sorry. Keyboard issue.
Please let me know if it's useful, problematic, needs refinement, or any other feedback, especially if I'm duplicating effort. This was a snap-decision made based on a conversation I had about speed needed to stay under the guns and instead of adding on more and more layers of "it depends," I made this. I'm not really a programmer, so it's pretty raw.
- 90 degrees does not produce useful closing damage data, as the time the ship needs to close a band is infinite.
- The numpad doesn't function properly. This is a known HTML5 issue, and is not something I can fix program-side. It has something to do with num-lock state not being respected, I believe. Shy of scanning for key-codes, I do not have a solution.
- This is obviously only for guns, as you cannot dodge a missile. I have not looked into missile damage equations.
- I have not computed effective DPS from scratch, I used the Wiki equations. It may be possible that DPS will be lower due to lower hit rate
- If this tool is of use, it can be expanded and refined. If it is not of use, I'd prefer not to spend more time on something that works for my needs.
- An Android version is possible, but input and UX refinements would be required. A prototype is currently running for testing.