The general damage dealt during an attack is a sum of damage dealt by every single creature in the attacking stack. The damage is usually chosen randomly between the minimal and maximal damage parameters of a stack. Damage dealt equals the product of that digit and the number of creatures in the stack. The attack parameter increases dealt damage, while the defense parameter of the defending stack decreases it.
>>If "Attack" (A) of the attacking stack is bigger than "Defence" (D) of the defending stack, then
Damage = N * R(min, max) * [1 + 0,05 (A-D) ] * [1 - 3*Y/100]
>>If (A) is smaller than (D), then
Damage = N * R(min, max) * [1 - 3*Y/100] / [1 + 0,05*(D-A)]
Whence:
N - number of creatures in the attacking stack;
R(min, max) - random rational number out of the "Damage" parameter delta down to two decimal digits;
Y - The level that the character in command of the defending stack has reached in faction skill of the attacking character's faction.
The damage dealing obeys the following rules. First, the damage is dealt to one creature of a stack; if the damage value is greater than that creature's life total, it perishes and the rest is dealt to the next one; if there is still damage "left", it is dealt to the third creature, and so on. In the end, either the stack perishes completely, or a certain creature is dealt damage not enough to kill it and stays wounded. The hit points of a creature can be seen in the context menu to every stack. Ctrl+click a creature to view it.
When a stack is healed or resurrected, at first one creature is healed, then, if there are heal points "left", and, furthermore, the spell or ability allows it, next creature is resurrected and gains the rest of heal points, and so on. The amount of resurrected and healed creatures cannot exceed the initial numbers of that stack. Certain creatures' abilities to drain life or resurrection magic works in the same way.