I'm a math guy and I know most people aren't so I'll spare the gritty details unless someone actually wants to see a proof.
Suppose you have a die of size
X (a dX , if you will). Great Weapon Fighting will increase the average roll on your die by
1-(2/X). So the bigger the die, the more your average damage increases, although this increase can never be larger than 1.
In general, suppose you have a die of size
X and you get to re-roll it once whenever it lands on any of the
Y lowest numbers (for Great Weapon Fighting
Y would be 2, for the Halfling's Lucky racial feature
Y would be 1, etc.). Then the increase in the average roll on your die is equal to
(Y/2)*[1-(Y/X)]. Note that this formula only makes sense if
Y is less than
Below is a short proof which is not technically correct but is much easier to follow than a complete proof. Again, if anyone would like a more detailed proof just let me know.
If you want to find the average roll on a die, you add up the values on each of its faces and divide by the total number of faces. It's a known mathematical formula that the sum of numbers from 1 to
X is equal to
(X^2 + X)/2. So the average roll on a dX is
[(X^2 + X)/2] / X. This is the same as
(X + 1)/2.
With Great Weapon Fighting you are allowed to re-roll all 1s and 2s on a damage die. This is equivalent to replacing the "1" and "2" on the die with the value of its average roll (for a d6, for example, using GWF would be equivalent to rolling a 6 sided die where the faces were labeled "3.5", "3.5", "3", "4", "5", "6").
Suppose we had such a die (the modified one described in the previous paragraph), and we wanted to find out the difference between its average value and the average value of the original dX. How would we proceed? We would do this by:
Subtracting 1 and 2 from the sum of the numbers on the faces of the original dX.
Adding the average value on the original dX two times.
Dividing this number by
Putting this together, the number we are looking for (the difference between the original dX average and our modified GWF die average) is equal to
[-1 -2 + (X + 1) / 2 + (X + 1) / 2] / X =
[ -3 + (X + 1) ] / X =
(X - 2) / X =
1 - (2 / X)
General case (short proof)
Let us suppose that a dX is to be rolled and, if the die comes up showing any of the
Y lowest values, then the die is re-rerolled exactly one time. What is the expected value for such a die? As above, we proceed as follows:
Subtract the values "1" through
Y from the sum of the numbers on the faces of the original die. This value (the value of the numbers we are subtracting) is equal to
(Y^2 + Y)/2.
Add the average value of the original die roll
Y times. This is equivalent to adding
Y*(X + 1) / 2 to the sum of the numbers on the original die.
Divide this number by
Putting this together, the number we are looking for (the difference between the average for the original dX and the average for the modified dX [the one where we re-roll if the first roll turns up any of the Y lowest values]) is equal to:
[ -(Y^2 + Y) / 2 + Y * (X^2 + X) / 2 ] / X =
Y * [ -(Y + 1) / 2 + (X + 1) / 2) ] / X =
(Y / 2) * (X - Y) / X =
(Y / 2) * [1 - (Y / X)]