Hey @golden kettle ! Yeah, I was also puzzled by that. My conclusion was: the multiplication is really needed as it has the power to scale up/down some value. See, a multiplication of a big number with a small number will cut it down a lot, in comparison to summing it up and doing the average. Something like this:
Considering two scores:
A = 0,9
B = 0,1
Sum: 0,9 + 0,1 = 1
Multiplication: 0,9 * 0,1 = 0,09
So, as a comparison of the results, the Sum will increase the final value, and multiplication will decrease it "a lot". When we get the sum and make the average, it still results in a "high" value, which would be 0,5
Considering the two same score values as above, and applying the average method VS the method presented by Dave Mark:
Sum and Average: (0,9 + 0,1) / 2 = 0,5
Dave's Method:
modificationFactor = 1 - (1 / 2) = 0,5
makeUpValue = (1 - 0,09) * 0,5 = 0,455
finalConsiderationScore = 0,09 + (0,455 * 0,09) ~= 0,131
Results in ~0,131
Comparing the results again, they are very different from each other and they express different design choices. With multiplications, we are always scaling one value with the others, which happens in a different proportion in comparison to sum and divide
Another thing that I noticed is that, if you have a value 0 as score, the results will ofc differ a lot:
Sum and Average: (0,9 + 0) / 2 = 0,45
Multiplication: (0,9 x 0) = 0
But even when performing sum and average, in case any zero, we could perhaps just say "ok, cancel the sums, result zero immediately"...but that's a workaround which might break the methodology
Why am I speaking about zeroes? Because, when designing my own curves these days, there is some usability value when you want to return zero in one of the curves as a way to cancel the other ones. Like: I'm combining 3 curves to know if I should use a Skill. One of the curves will return zero if the skill is in cooldown, aborting the whole multiplication