Broken bard's anti-magic sphere


The new anti-magic sphere from the bard power list
is pretty much broken.

The description says “prevent magic damages by 20%”
but actually, it’s way worse than that :
even if you pound your enemy with 100 damages, and it only has 2 life point left,
it will survive, because the 20% reduction seems to be applied after the damage get automatically reduce to the number of life points left for the enemy.

As a result, such target is impossible to kill with magic spell.

Looks like a bug to me : a 20% magic damage reduction from 100 damages should still allow 80 damages to get through, so the 2PV bugger should die.

I see this bug being more and more abused in defense teams. If unfixed, I expect it to become widespread shortly.


I think it is problematic only to scatter damage but I could be wrong.


This is what I believe is happening. Say you have an attack that deals 40 damage randomly split among enemies. There are 2 troops left, one at 5 health and one at 35. In this game, both die. The damage is split in a way such that nothing is overkilled.

What I believe is happening in this bug is that the damage split is being calculated, then the reduction occurs. Even if the hero is the only troop left, it’s assigning just enough damage to kill it, which then gets reduced. So if a 5 health bard is targeted by something that deals 30 damage, the damage gets reduced to 24 which is still lethal. But if the damage is split like with a Tesla, only 5 damage gets assigned and 4 gets dealt. What should probably happen is that the game should account for this damage reduction by assigning it an extra 25% damage. So in this case, the 30 damage attack assigns 7 damage which is reduced to 5 (the ability appears to round up), killing the hero.


@cyan4973 can you please give me an example of a battle where this happened?
I’ll need to know the troops on both teams.



I am finding this same problem.
Took pictures too, if I can figure out how to post them


The closer to death the hero, the higher the shield seems to get


Here’s how I saw it explained when someone asked about it somewhere on Discord a while back:

Any troop that splits damage is subject to the bug. For example, TrichoBezoar just posted an example with Sunbird. When the damage split is calculated, the game is friendly and doesn’t waste damage “overkilling” a target. If it chooses > lethal for the hero, it clamps that back down to lethal.

So let’s say we have a slot 1 hero with 10 HP left, and a Sunbird that’s about to wreck for 80 damage.

  • Sunbird chooses the hero and the algorithm wants to do 23 damage. But since 23>10, it clamps back down to 10.
  • 10 damage is dealt to hero, and the trait lowers it to 8.
  • The hero now has 2 HP.

More severe, let’s say we have a slot 1 hero with 1 HP left with the same Sunbird:

  • Sunbird tries to do 23 damage, clamped to 1.
  • 1 * .8 rounds down to 0.
  • The hero is immortal vs. magic damage.

The problem is the code that does the damage calculation doesn’t/(probably) can’t know about the damage reduction. I don’t know what fix behavior would be appropriate, glossing over a lot of discussion about what a player “might expect”. It may just be a “feature” of this talent.