Dugy / Legend_of_the_Invincibles

An add-on campaign for the Battle for Wesnoth game
GNU General Public License v3.0
40 stars 22 forks source link

Only one unit dies by incinerate per turn #821

Closed arobinson closed 3 months ago

arobinson commented 5 months ago

In this save game, two goblin knights are incinerated (right middle of the map). Both should die in the next turn, but only one does. One dies and the other loses 3 HP but does not die.

LotI2-Across the Barren Land Turn 25.gz

Dugy commented 5 months ago

Incinerate kills only units that have 1 hitpoints. Those with more than 1 hitpoint take fire damage but will be kept at 1 hitpoint if it would have killed them.

Those two Goblin Knights are at 1 hp and 4 hp, the one at 1 hp is expectedly killed and the one at 4 hp is expectedly reduced to 1 hp. If I use debug mode to set the hitpoints of the one at 4 hp to 1 hp, both are killed.

I could change this behaviour to the more obvious one, but the code is quite prone to regressions and I don't want to break it again.

arobinson commented 5 months ago

I figured with the loss of 15, anything at 15 or lower would die. Perhaps just an update on the wording to state the actual behavior?

Dugy commented 5 months ago

The wording is quite vague. I can change it to the behaviour you expect, but I am worried it would cause regressions. If you promise you will test it properly after me, I can do it.