I couldn't find a way to display DPS/Ohms at a glance so I made this.
Just put that in 'data/scripts/lib/tooltipmaker.lua' at line 360
(Should be right before 'return tooltip' within the 'makeTurretTooltip' function.)
Video with description / install instructions better made than my two lines:
if turret.stoneEfficiency == 0 and turret.metalEfficiency == 0 then
tooltip:addLine(TooltipLine(15, 15))
local multiShotMod = 1
if turret.simultaneousShooting then
multiShotMod = math.pow(0.85,turret.numWeapons - 1) -- hack for multi-shooting weapons with heat issues? found with very poor sample size of a 'study'
end
local averageHeat = turret.heatPerShot * turret.shotsPerSecond - turret.coolingRate
local hotFireTime = multiShotMod*turret.maxHeat*0.85 / averageHeat
local coolTime = turret.maxHeat*0.85 / turret.coolingRate
local modifier = 1
if turret.maxHeat > 0 then
modifier = hotFireTime / (hotFireTime + coolTime)
end
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "N-DPS: " .. round(turret.dps * modifier,0)
line.lcolor = ColorRGB(1.0, 0.7, 0.7)
tooltip:addLine(line)
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "S-DPS: " .. round(turret.dps * modifier * turret.shieldDamageMultiplicator,0)
line.lcolor = ColorRGB(0.7, 0.7, 1.0)
tooltip:addLine(line)
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "H-DPS: " .. round(turret.dps * modifier * turret.hullDamageMultiplicator,0)
line.lcolor = ColorRGB(0.7, 1.0, 0.7)
tooltip:addLine(line)
if turret.maxHeat > 0 then
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "Hot Fire Time: " .. round(hotFireTime,1)
line.lcolor = ColorRGB(1, 1, 1)
tooltip:addLine(line)
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "Cool Time: " .. round(coolTime,1)
line.lcolor = ColorRGB(1, 1, 1)
tooltip:addLine(line)
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "HR/SPF/CR: " .. round(turret.heatPerShot, 1) .. "/" .. round(turret.shotsPerFiring, 1) .. "/" .. round(turret.coolingRate, 1)
line.lcolor = ColorRGB(1, 1, 1)
tooltip:addLine(line)
elseif turret.shotsPerFiring > 1 then
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "SPF: " .. round(turret.shotsPerFiring, 1)
line.lcolor = ColorRGB(1, 1, 1)
tooltip:addLine(line)
end
if turret.simultaneousShooting then
local line = TooltipLine(lineHeight, fontSize)
line.ltext = "Multifire: " .. turret.numWeapons
line.lcolor = ColorRGB(1, 1, 1)
tooltip:addLine(line)
end
end
Here is what it looks like: http://imgur.com/a/RVw3C
N-DPS is the nominal without mods
S-DPS is shield DPS
H-DPS is hull DPS
Hot Fire Time is how long the gun will shoot after one overheat->cooldown cycle while holding the trigger
Cool Time is how long the gun will shoot after one overheat->cooldown cycle while holding the trigger
HR/SPF/CR: HR = heat gained per bullet/heat rate, SPF = shots per pull of trigger, CR = cooling rate
Multifire = #, the number of barrels that fire in one pull of trigger
I was able to make some really odd turrets like a SPF of 3 on a Multifire of 4 to fire 12 rounds each trigger bull.
SPF is like the "burst fire" and Multifire is where all the bullets come out at once.
Anyway, not guaranteed to work 100%, but it at least gives you an easy glance approximation.
Likely easily applied to fighters because turrets and fighters share so many of the same properties. but I don't use them, so... :P
Code under WTFPL
tooltipmaker.zip