From Discworld MUD Wiki
Revision as of 09:54, 11 August 2009 by (Talk)

Jump to: navigation, search

The modification of damage formula for enchantments looks inconsistent with the the information in the distribution lib. Can the person who posted the formula cite their source?

The source was the mudlib I believe. Rehevkor 13:24, 9 August 2009 (UTC)
std/weapon.c, lines 176-177:
  tmp = val + (val * query_enchant()) / (query_max_enchant() + query_enchant());
Subtract out the base damage:
  extra_dmg = base * query_enchant() / (query_max_enchant() + query_enchant())
Divide top and bottom by max_enchant gives:
  extra_dmg = base * fraction_enchant / (1 + fraction_enchant)
Then multiple top and bottom by 100 to use a percentage:
  extra_dmg = base * (%enchant / (100 + %enchant)
Which is what is in the article. --Chat 14:14, 9 August 2009 (UTC)

It's close. And probably close enough for _most_ integer math since the decimal bits get dropped off. But it's not right. Why not just leave it at the real formula so that it's right all the time?