Module:Stab bonus
Revision as of 06:13, 3 September 2020 by LunaeLumen (talk | contribs) (Update to stabbing from 0.19. I hope I got this right.)
Documentation for this module may be created at Module:Stab bonus/doc
local p = {} -- This function is based on player_stab_weapon_bonus in attack.cc local function stab_weapon(skill, weapon, tier) local damage = 1 if weapon ~= "Others" then damage = damage * (1 + skill / (tier * 10)) end damage = damage*(1 + skill / (tier*12)) return 100*(damage-1) end local function stab_bonus(skill, weapon) local bonuses = {} for _, tier in ipairs({1, 4,}) do table.insert(bonuses, stab_weapon(skill, weapon, tier)) end return bonuses end function p.stab_table(frame) local ret = [=[{| class="prettytable" style="border:none; margin:0; padding:0;" |- ! rowspan=2 | Stealth/Weapon skill average ! colspan=4 | Short Blades ! colspan=4 | Others |- ! High-Tier ! Low-Tier ! High-Tier ! Low-Tier |- ]=] for i = 1, 27 do ret = ret .. ("| %d\n"):format(i) for _, bonus in ipairs(stab_bonus(i, "Short Blades")) do ret = ret .. ("| %+.1f%%\n"):format(bonus) end for _, bonus in ipairs(stab_bonus(i, "Others")) do ret = ret .. ("| %+.1f%%\n"):format(bonus) end ret = ret .. "|-\n" end ret = ret .. "|}\n" return ret end return p