The x10 was a quick UI fix. If I find in playtest that is too much of a restriction, I will make it a popup entry with unlimited options instead of a drag-drop.
Someone else suggested the expected hits rather than number of shots. It is perhaps better from a pure maths perspective but isn't as straightforward for players to comprehend when setting up point defence or designing ships so I will stay with shots for the first campaign and see how it goes.
In my opinion a probable hit ratio seem much simpler than having to do the math yourself, the game would just assign shots based on a minimum level of total hits at any missile.
Yes, but you would still need to do the math. If you have 100 missiles and 300 weapons, how do you know that setting the kill % to (for example) 50% or 100% won't result in only targeting half the missiles with all your shots (because they are hard to hit)?
The shot version means that every missile is targeted at least once and with only basic priority settings you can ensure your most effective weapons are used first and less effective later, so you distribute the shots more effectively and don't have to start adding up the to-hit probabilities in order to pick the right concentration number.
I think each of the 3 approaches (limiting total shots, limiting total expected hits, and limiting overall hit ratio) will make sure every missile is targeted at least once, as long as the shot allocation is done in the current way (i.e., one shot to each missile first, if there are remaining shots, rinse and repeat), and the limits are set as upper bounds (to avoid excessive overkills). Setting a
- Limiting total shots: tracks the total number of shots fired on each missile, order this list ascendingly. For each shot assigned, add 1 to the counter.
- Limiting total expected hits: tracks the total expected hits (chance to hit) for shots fired on each missile, order this list ascendingly. For each shot assigned, add the chance to hit of that shot to the counter.
- Limiting overall hit ratio: track the overall chance to miss. This is slightly different, the array starts with all elements of 1, meaning each missile has a 100% chance to leak when no shots are taken. When one shot is allocated to a missile, multiple the (1-chance to hit) to the current record. Order this list descendingly.
I can see the advantages and disadvantages of each approach.
- Limiting total shots is the most straightforward to understand, and more useful to plan for the MSP needed for weapon failures. The main disadvantage in my opinion is it must be set up individually for each type of beam weapon to reach the desired effectiveness.
- Limiting the total expected hits is straightforward to plan for 'how many overkilling shots I am willing to spend at most', and it works for all beam weapon types. Its disadvantage is that it is harder to track how many actual shots are limited for each weapon
- Limiting the overall hit ratio gives the best idea of 'what's the minimal chance of each missile leaking when I have more PD than they have missiles', and it works for all beam weapon types. Its main disadvantage is that the number of shots needed (and potentially wasted) to reach the limit will grow exponentially, which is not straightforward.
I love examples so I will give a very simple one Consider 3 incoming missiles, and there are 2 BFCs. BFC1 has 2 shots with an 80% chance to hit, and BFC2 has 24 shots with a 20% chance to hit. In this scenario, typically it is considered the defender has more than enough shots for missiles.
For limiting total shots per missile:
- If the concentration limit for BFC1 and BFC2 are both set to 3 (default), then the missiles will be allocated as:
- Missile 1: 80%, 20%, 20% (3 shots)
- Missile 2: 80%, 20%, 20% (3 shots)
- Missile 3: 20%, 20%, 20% (3 shots)
- In the end, each missile has a chance of 12.8%, 12.8%, and 51.2% chance to leak
- If the concentration limit for BFC1 is set to 1 and BFC2 is set to 10, then the missiles will be allocated as (note that in the end there are not enough shots to allocate 10 shots per BFC for BFC2):
- Missile 1: 80%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20% (9 shots)
- Missile 2: 80%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20% (9 shots)
- Missile 3: 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20% (8 shots)
- In the end, each missile has a chance of 3.4%, 3.4%, and 16.7% chance to leak
For limiting total expected hit per missile:
- If the total expected hit limit for BFC1 and BFC2 are both set to 1, then the missiles will be allocated as:
- Missile 1: 80%, 20% (2 shots)
- Missile 2: 80%, 20% (2 shots)
- Missile 3: 20%, 20%, 20%, 20%, 20% (5 shots)
- In the end, each missile has a chance of 16%, 16%, and 32% chance to leak
- If the total expected hit limit for BFC1 and BFC2 are both set to 2, then the missiles will be allocated as:
- Missile 1: 80%, 20%, 20%, 20%, 20%, 20%, 20% (7 shots)
- Missile 2: 80%, 20%, 20%, 20%, 20%, 20%, 20% (7 shots)
- Missile 3: 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20% (10 shots)
- In the end, each missile has a chance of 5.2%, 5.2%, and 10.7% chance to leak
For limiting the overall hit chance against each missile:
- If the overall hit chance limit for BFC1 and BFC2 are both set to 80%, then the missiles will be allocated as:
- Missile 1: 80% (1 shot)
- Missile 2: 80% (1 shot)
- Missile 3: 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20% (8 shots)
- In the end, each missile has a chance of 20%, 20%, and 16.7% chance to leak
- If the overall hit chance limit for BFC1 and BFC2 are both set to 90%, then the missiles will be allocated as (notice the significant increase in the number of shots compared to the last scenario):
- Missile 1: 80%, 20%, 20%, 20%, 20% (5 shots)
- Missile 2: 80%, 20%, 20%, 20%, 20% (5 shots)
- Missile 3: 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20%, 20% (11 shots)
- In the end, each missile has a chance of 8.2%, 8.2%, and 8.6% chance to leak
I think I still like the third option out of all of those it is the simplest one as long as you understand that getting 100% is most of the time nearly impossible.
There could be three inputs that you use for each fire control in this instance... you set a "minimum" number of shots distributed for each incoming missiles a desired "minimum" hit chance per missile and the lastly a percent of how many shots out of the total assigned to that fire-control it is allowed to use (both minimum and maximum).
This give you a pretty good control over how the fire-control works with relatively little math needing to go on in your head aside from figuring out if you want to restrict the number of shots the fire-control may use.
This also should make it fairly simply to code... if you say that it has to shoot a minimum of "2" times per missile it will do that as first priority, then it will look at the minimum hit probability of there is any shots left. The minimum shots per missiles override both of the other settings, so if you set the fire-control to fire only 50% of it's shots that inly impact when it looks at the minimum hit chance. It should always respect minimum number of shots per missile regardless.
So.. I could set that I want to at least 2 shots on each missile and a minimum hit probability of 80% and that it may use 50/100% (minimum 50% and a max of 100%) of the weapons assigned.
The two shots are respected in combination with other fire-controls in the fleet... the fire control with then use at least half of the shots to reach the minimum hit probability. The fire-control will use at least half the shots even if the minimum to hit probability is reached and is allowed to fire all shots but will stop when to hit probability is reached. Shots above the minimum probability should just be evenly distributed among all missiles with no real regards with "to hit" probability anymore.
This way you can use both these methods... you can say you want to fire 5 shots on each missile and have a hit probability of 10%. Then you effectively are just using the first method in that instance.
I think that with these three simple settings you would mainly have to set it up with intuition rather than using a bunch of math. The minimum to hit probability is something you will only misunderstand once when you put 100% and all shots go into one missile. Also, what I'm trying to avoid here are that I have to tinker with the PD settings for each incoming missiles salvo. I want something that can most of the time be quite generic. Say "2" shots per missile 90% minimum hit probability and 75-100% usage of the fire control. This should then work in 90% of all cases most likely, especially if I have shields to cover any leakers.