Are you, in fact, a pregnant lady who lives in the apartment next door to Superdeath's parents? - Commodore

Create an account  

 
Complete Master of Orion Newbie

I hadn't read that description, but it sounds like it matches MoO's actual observed behavior: Random distribution of damage, perhaps with a bias against the most extreme (maximum or minimum) results, and with higher average damage for hit probabilities nominally above 100%.

Unecessarily lengthy explanation with obsessively detailed examples in spoilers due to length:

For c >= 0, the full range of damage results is stretched or squished linearly over the range of possible d results between c and 100. Apart from truncation on the ends due to rounding, this is equivalent to rolling to hit first and then rolling damage; it's just condensed into the same single "die roll." For 0 > c, this "stretching" still occurs, but now the lowest damage rolls are no longer available because they are less than the minimum value of d.

Example: Suppose we have ion cannons, with damage range 3-8. If firing without a battle computer at Alkari smalls, c = 95. Thus we have:
Code:
d100:
1~94 = miss
95 = 3 damage
96 = 4 damage
97 = 5 damage
98 = 6 damage
99 = 7 damage
100 = 8 damage
If we fire as Mrrshans at a non-Alkari large though, we have c = 10, and thus we have something like:

Code:
d100:
1~10 = miss
11~25 = 3 damage
26~40 = 4 damage
41~55 = 5 damage
56~70 = 6 damage
71~85 = 7 damage
86~100 = 8 damage

One of the above is presumably at least slightly wrong; either 95 is a miss in the first case and one of the damage results never happens, or 10 is a hit in the second case and the average damage for that case might be very slightly lower or higher due to a rounding artifact.

Either way though, the average damage for each case is essentially the same, and (roughly) equivalent to "roll to hit; if you hit, roll 1d6+2 for damage." The exception comes in when you have a massive attack vs. defense advantage. In the most extreme case, where c = -50 (the lowest it can go per your description)...

Code:
d100:
-50~-25 = 3, except that this result is not possible
-24~0 = 4, except that this result is not possible
1~25 = 5
26~50 = 6
51~75 = 7
76~100 = 8

We're now effectively just rolling 1d4+4 for damage, meaning we always do at least some damage through shield 4 or less, and our average damage against an unshielded target increases by almost 20% over c = 0.

Of course, all of this may be slightly incorrect, depending on how the damage rolls are actually calculated. I suspect (based on research in a different thread) that damage results are actually biased away from the most extreme results, resulting in something like this, for c = 50

Code:
d100:
1~49: miss
50~54: 3 damage (actually 3.X damage, rounded off, because X = d-50)
55~64: 4 damage (actually 3.X~4.Y damage, rounded off, with X = d-50, Y = d-60)
65~74: 5 damage
75~84: 6 damage
85~94: 7 damage
95~100: 8 damage

That's just speculation about the way the damage gets "stretched out" though; in case RayF is reading this, I should note that I think the first system I described is better, and more in line with the design's intent, though not (I suspect) its execution.
Reply

http://jonsullivan.com/misc/moo.pdf

Check out pages 51 and 52. The -50 bound may just be due to table space. However Im pretty sure the 95 is the correct upper bound.
Reply



Forum Jump: