Okay... and am I to understand this is desired behavior? What's the reasoning here?
[code]
tmp_magic_reduction= self.user.getValue("Magic")/(pTarget.getValue("Magic")+1)
if tmp_magic_reduction < 1.0:
strength *= tmp_magic_reduction
[/code]Can you explain though why I get a damage range (like 40-60) when I nuke an enemy caster but a definite number when I nuke anything else?
so a flexible attack as the druid's nuke (useble on every position) should do high damage to high HP creatures but lower damage to more brittle opponents.
I disagree with your 60% nuke if I understood it right. I can't take down Mormont/ratmen back rows like that.
I know that some people are crazy
I think this methods were used because we find two widely different archetypes in the game: Front line fighters have mostly high HP (bandits ~100, white wolves ~85, ...) while creatures in the back are fragile (archers and mages are mostly in the 45 HP class). Because it is required (not sure why, but whatever...) to permit longer fights you built a highly complex system of checks and balances, so a flexible attack as the druid's nuke (useble on every position) should do high damage to high HP creatures but lower damage to more brittle opponents. So far so good.
But I don't like the complexity of the current scheme, I fear this system will in the long run (we're still in act 1...) not sustainable, you pile special handling on special handling and in the end the stack breaks (my personal and totally unfair assessment).
One way to avoid this would be a redefintion of the "risky" skills (mostly those that are not restricted to the front row: Ranged attacks and attack spells): Instead of "250 % of the base damage [plus dozens of hidden variables capping the amount. Harr harr!]" a damage calcuation in the form "60 % of the opponent's HP, but nor more than 250 % of the base damage".
[code]10% -> 19%
20% -> 36%
30% -> 51%
40% -> 64%
50% -> 75%
60% -> 84%
70% -> 91%
80% -> 96%
90% -> 99%[/code]