So while testing one of my RPG maps I came across an interesting (and mildly problematic) phenomenon I hadn't noticed before: the minimum damage from an attack (with a positive damage value at least) seems to be 1, regardless of armor penalties and the like.
To explain (with some made up numbers for convenience):
Archer deals has 1-1 damage. She has Arrow attack type which does 20% damage against Plate armor type.
Soldier has Plate armor type and enough armor to give him a 30% reduction.
The numbers seem to tell us that she does .56 damage per attack, but this is not the case. Instead she does 1 damage per attack.
I did some other testing and the problem isn't that the damage is a fraction; warcraft 3 handles fractional damage above 1 just as one would expect. Notably, Warcraft 3 seems to round down all fractions for display purposes. For example, if the archer had 3-3 damage then she would deal 1.56 damage per attack (the displayed result of which would be -1 life, then -2 life, then -1 life, and so on).
Another test revealed that units that deal 0-0 damage do indeed do 0 damage, rather than 1 though.
Thus there seems to be a minimum damage threshold in Warcraft 3 that applies to any attack which would deal positive damage less than 1 and makes it deal 1 damage instead.
Does anyone know how to change this? Conceivably someone might want a minimum damage of, say, 10 for their game. I would like minimum damage 0 for my own purposes. I've looked through Advanced: Gameplay Constants but haven't found any number that looks like it relates to this.
To explain (with some made up numbers for convenience):
Archer deals has 1-1 damage. She has Arrow attack type which does 20% damage against Plate armor type.
Soldier has Plate armor type and enough armor to give him a 30% reduction.
The numbers seem to tell us that she does .56 damage per attack, but this is not the case. Instead she does 1 damage per attack.
I did some other testing and the problem isn't that the damage is a fraction; warcraft 3 handles fractional damage above 1 just as one would expect. Notably, Warcraft 3 seems to round down all fractions for display purposes. For example, if the archer had 3-3 damage then she would deal 1.56 damage per attack (the displayed result of which would be -1 life, then -2 life, then -1 life, and so on).
Another test revealed that units that deal 0-0 damage do indeed do 0 damage, rather than 1 though.
Thus there seems to be a minimum damage threshold in Warcraft 3 that applies to any attack which would deal positive damage less than 1 and makes it deal 1 damage instead.
Does anyone know how to change this? Conceivably someone might want a minimum damage of, say, 10 for their game. I would like minimum damage 0 for my own purposes. I've looked through Advanced: Gameplay Constants but haven't found any number that looks like it relates to this.