My problem -

Each round, each of the 5 champions get to strike each of the 99 monsters once; however, their attacks are such that one third of each champion's attacks are ineffective, causing 0 damage; one third cause normal damage (1 point) and one third cause bonus damage (2 points). (The numbers have been simplified for the purposes of this example.) So, in total each of the monsters can get hit anywhere from 0-10 points of damage each round, but the amount will vary depending on whether the attack was ineffective, caused normal damage or caused bonus damage. As I'm trying to figure out the right percentages between ineffective, normal and bonus damage attacks (in the example above, they're each at one third, but I'm not sure that will make sense for the gameplay), I need to know how the damage will be distributed among the 99 monsters as I change the percentages associated with each of the three different types of attacks. In other words, if I use these x percentages, they will result in y monsters receiving 10 points of damage, z monsters receiving 9 points of damage, etc.) Does anyone know how I can do that?


1 Answer 1


A good tool to simulate this is AnyDice.com. It is supposed to be used to simulate dice throws in tabletop games, but it can in many cases be easily adapted to do the same with random chances in video games. In your case, the damage roll is output 5d{0, 1, 2} ("take a three-sided die with the values 0, 1 and 2, throw it 5 times and add up the results") which results in a probability distribution curve like this:

enter image description here

As you can see, there is only a 0.41% chance for each enemy to die.

This intuitively sounds too low. But we can verify that this is in fact correct by calculating the odds manually.

For an enemy to receive 10 damage, you need to roll a 2 five times in a row.

  • The chance to roll a 2 is 1/3.
  • The chance to roll two 2's in a row is (1/3)² or 1/9.
  • The chance to roll three 2's in a row is (1/3)³ or 1/27.
  • The chance to roll four 2's in a row is (1/3)⁴ or 1/81.
  • The chance to roll five 2's in a row is (1/3)⁵ or 1/243.
  • 1/243 is (rounded) 0.00412

Anydice is surprisingly powerful. You should check out the documentation for more information. Your question asks for how you can play around with different probabilities of rolling 0, 1 and 2. In other words, you need a loaded die. AnyDice can do that as well.

This AnyDice program simulates 5 rolls, each with a 20% chance to roll 0, 50% chance to roll 1 and 30% chance to roll 2:

output 5d{ 0:20, 1:50, 2:30 }

But when you hit the limit of what can be done with AnyDice, then you might want to simply write your own little program to simulate your game mechanics.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .