It's all fine and well to have statistics for what chance each shell has to start a fire. However, even when fully calculating the change in this value based on different skills, flags, targets, and modification upgrades, we don't get an intuitive result that tells us all we need to know. This guide is from the perspective of the arsonist, but it works just as well for potential arson victims to assess their ability to increase their fire prevention.
This guide will use exponential functions to arrive at two numerical values which you can take to the bank:
n̄, the average number of hits on a target until a fire starts
n̄, that is n-bar, will show us an unbiased value. We can look up the specs affecting a shell's fire chance, plug in the values, and see how effective those shells will be at starting fires by examining how few of them are needed (on average).
τ, the mean time to start a fire via sustained attack
τ will show us how long it's going to take to set our target on fire. This is enormously useful information: when we use fire chance skills, flags, and modifications, this is the number we are really hoping to change. The difficulty is that this number changes based on our gunnery accuracy and whether we can keep firing at our full RPM in the heat of battle. Therefore, we won't look at τ alone to judge the efficacy of our fire chance modifiers. In keeping with convention for exponential equations, this value which comes from mean lifetime for exponential decay is represented by the Greek letter 'tau.'
A note on prerequisites:
This guide presumes an understanding of how base per-shell fire chance gets modified to become effective per-shell fire chance. This understanding is not necessary to benefit from the information presented here, but it is necessary to follow along with the math. Several spots on the forum explain how to derive effective per-shell fire chance, including my own translation and brief analysis of an old dev post. The WG Wiki's HE Gunnery section is perhaps the best place to find a comprehensive treatment of the formulae.
We know how to get the chance of a fire for a single hit. To find the chance of getting a fire on two hits to the same part of the same ship, we look at it this way:
Let's assume our effective shell fire chance is 10%. So when the first shell hits, there is a 10% chance a fire starts, and a 90% chance it doesn't. We are only interested in figuring out when the first fire happens, so for the second shell we don't worry about the 10% of the time that the first shell already took care of things for us (in reality, there would be a chance for the next shell to reset the fire's duration). Therefore we take that second shell to have a 10% chance to start a fire on the 90% chance that the first shell did not, giving 9%. The remaining 81% of the starting 90% is when both shells fail to start a fire. So two 10%-shells have a combined fire-starting chance of 19%.
Mathematically, this looks like so:
let f be the effective per-shell fire chance (i.e., 10% which is 0.1)
let y1 be the fire chance after shell #1: y1 = 1 - (1-f) = 1 - (1-0.1) = 1 - 0.9 = 0.1 = 10%
let y2 be the fire chance after shell #2: y2 = 1 - (1-f)(1-f) = 1 - (1-0.1)(1-0.1) = 1 - (0.9)(0.9) = 1 - 0.81 = 0.19 = 19%
As we increase the number of shells hitting this ship (actually, this ship's section), we just put more (1-f) terms into the multiplication. So to figure out the chance of a fire starting after an arbitrary number of shells hit, we use this formula:
let n be the number of hits
let w(n) be fire chance after n shells: w(n) = 1 - (1-f)n
Hey, now we're on to something! If we make a spreadsheet table using this formula, we'll see our fire chance increase, quickly at first, until it slows down as it approaches 100%. It turns out that if we graph this trend, it is an upside-down example of exponential decay:
A quick plot of w(n) shows that the more hits we accumulate, the closer the chance of a fire gets to 100%
We'll leave the math lesson to Dr. Cherry's hand-out "How to Find Equations for Exponential Functions" and move on to what we really want: the average number of hits to start a fire. (Side note: the average number kicks in at a 63.2% chance of fire, for reasons best left explained by Wikipedia). Remember how we decided this is an upside-down example of exponential decay? We need it to be right-side-up to use our exponential functions knowledge. We do this by inverting the formula and shifting it along the dependent axis. This represents the chance for our target to not be on fire yet, after n number of our HE shells:
let z(n) be chance for target to not be on fire yet
Inverting and shifting w(n) gives z(n) = 1 - w(n)
so z(n) = (1-f)n
So long as 0 < f < 1, this modified formula describes a typical exponential decay, if you accept number of hits in lieu of time as the independent variable. Because we want to find mean "lifetime" (which in our hits-based domain becomes mean hits until a fire starts instead), we need an exponential decay equation. That's an exponential equation in the base-intercept form where the base is e. In other words, y = P0e-λx. e is Euler's number and λ is known as the decay rate. We already know the chance to not be on fire starts at 100% when no shells have hit, which becomes our Y-intercept. In decimal form, 100% is 1, so we leave off the intercept (P0) for simplicity. Because we are not seeking to find a new formula but rather a new form for the same one, our dependent variable does not change meaning and so the exponential decay form e-λn is equivalent to (1-f)n.
Set the two forms equivalent:
e-λn = (1-f)n
Take the natural logarithm of both sides:
-λn = ln[(1-f)n]
Apply the logarithm power rule to bring the exponential n out of the logarithm as a product:
-λn = n·ln[(1-f)]
Divide both sides by -n:
λ = -ln[(1-f)]
In our example of f = 0.1, this computes to roughly λ = 0.1054. Thanks to another quick check at Wikipedia, we know that mean lifetime is τ = 1/λ. But remember, our domain is in terms of cumulative hits rather than time, so we are calling it n̄. Thus:
n̄ = 1/λ = -ln[(1-f)]-1
Which is, in our case, is roughly 9.5. To double-check our work we find w(9.5) and look for the 63.2% chance of fire mentioned earlier:
w(9.5) = 1 - (1-f)9.5 = 1 - 0.37 = 0.63 ✔
By this point we've accomplished three things: we have found the value for n̄, we have confused everyone who isn't up to speed on their exponential formulae, and we've perturbed everyone who is by our flagrant disregard of the precise meaning of equals vis-à-vis rounding.
Mission accomplished! But what does n̄ = 9.5 mean? If you took your ship out against your target and counted how many hits it took to set it on fire, then repeated that process so many times that everything averaged out perfectly, you would find that you used 9.5 shells for every fire you started. This is a number where you will see significant change if you're really making a difference with your fire chance modifications.
How many shells are needed, on average, for a wide range of effective per-shell fire chances
Finding n̄ is well and good, but we all know that some ships with a high per-shell fire chance simply don't have the output to compete as effective flamethrowers. If we make a few assumptions, we can turn our average number of hits into an average amount of time before we start a fire! What we need to do is come up with a formula for hits per second based on our rate of fire and our hitrate. Such a formula is simple enough:
let h be the ratio of hits to misses (i.e., we can choose h = 0.16 for 16% accuracy reflecting extreme long-range fire)
let r be the rate of fire per gun in seconds (i.e., r = 7.5/60 for 7.5 RPM into seconds)
let g be the number of guns brought to bear (i.e., g = 9 for a modest broadside such as on the Aoba)
We should think carefully when choosing these values. Our statistics may show that we have a 27% accuracy rating in a given ship, but do we care about the overall average? Maybe it's more reasonable to assume that our concerted arson efforts come when we're in a position to get a lot of hits, for example when we're shelling a battleship which cannot dodge lest it open up its broadside to a greater threat. On the other hand, how likely are we to fire at our ship's exact maximum rate of fire? Perhaps we need to pause and dodge every so often; it may be wiser to reduce our rate of fire value by 10% before putting it into the formula. Likewise, we should consider the particular scenario we want to examine to determine whether we'll be using a full broadside or perhaps only our forward-firing guns. Once we have chosen our values, multiplying all these values through gives our effective shells per second:
let s be shells per second: s = hrg = (0.16)(7.5/60)(9) = 0.18
This gives us a conversion ratio to translate our independent variable in z(n) from shells to time, by making the substitution n = st (where t is time in seconds). Since we want mean lifetime (which in the time domain becomes mean time until a fire starts), we'll stick with our exponential decay form:
z(n) = e-λn
z(t) = e-λst
Because the decay rate, λ, is the value which absorbs the coefficient in our substitution, we use λ' (pronounced lambda-prime) to represent the new decay rate in our time-domain formula, so:
z(t) = e-λ't
Where λ' = λs
In our example, this is roughly λ' = (0.1054)(0.18) = 0.01896. Recall that τ = 1/λ:
τ = 1/λ' = 1/0.01896 = 52.7
Which is a time in seconds representing how long, on average, our target will remain fire-free. Taking the whole process into one formula, this value is found by:
τ = 1(-hrg·ln[(1-f)])
Once we get this programmed into a spreadsheet or some other utility, we can easily change values to reflect the addition or removal of commander skills, modification upgrades, and signal flags. We will get a good sense of how much difference each change makes in your real ability to commit arson while remaining fire-free.
Math is hard, can we have an online calculator?
No, tough beans. However, you're welcome to my spreadsheet. It's in open document spreadsheet (ODS) format, so your favourite spreadsheet program should be able to open it (if not, I'm sorry to be the one to tell you this, but your software is fascist). The spreadsheet is designed to provide a relatively quick analysis given a particular attacking ship, so you can plug some values in and watch the important numbers pop out the bottom. It takes the math one step further in converting mean time to start a fire into median time to start a fire, which is helpful for analyzing very slow reloads. Perhaps most helpfully, it allows you to add or remove various modifiers without having to calculate the effective per-shell fire chance yourself (in other words, all the stuff we took for granted during our analysis).
A copy of the spreadsheet is attached to this post:
WoWS Firestarting 1.0.1.zip 34.66K
Here's an example screenshot where I check out the stats for my BFT Kiev firing bow-on against a danger-close T8 battleship, giving myself 85% accuracy and a 0.5 second delay between when the guns reload and when I actually fire again:
Note to third-party website developers: you are
welcome, no, encouraged to create your own online calculator based on my work. Please include attribution to myself and my sources. You can credit me as Special_Kay[WoWS-NA] or simply link back to this guide.