I'm not sure how the exactly game averages damage but it probably takes every possible roll and averages them.
For example, on, a 1d4 weapon, the possible rolls are 1, 2, 3, 4.
On averaging this would give you
(1+2+3+4)/4 = 2.5
This is perfectly correct.
But suppose I was trying to create a weapon which deliberately leaves a possibility for no damage (a weapon which has chances to cause incredible amounts of damage or no damage or maybe a weapon that has an incredible rate of fire but little damage etc.), I believe the average is off...
Take the example of a hypothetical weapon doing 3d2-4 (useless, I know, but this is just an example)
The possible die rolls are:-
1,1,1 --> 3-4 = (-1) ~ 0
1,1,2 --> 4-4 = 0
1,2,1 --> 4-4 = 0
1,2,2 --> 5-4 = 1
2,1,1 --> 4-4 = 0
2,1,2 --> 5-4 = 1
2,2,1 --> 5-4 = 1
2,2,2 --> 6-4 = 2
On averaging, we get
(0+0+0+1+0+1+1+2)/8 = 5/8 = 0.625 ~ 0.6
Hence, 0.6 should be the average damage.
However, the game does not take into consideration that the roll of (1,1,1) would not give -1 damage but will get rounded to 0 and displays an average damage of 0.5.
Now, in this example, the difference is not that much. But, it's easy to extrapolate and see where it could be a problem.
Take 1d20-10 --> Half the values will be negatives. and yet the weapon won't be entirely useless...
Would it be possible to fix this?