Release 1.3.6
- Added skill part to Barrage - Added crit overcap info to crit breakdown - Default gem level now varies according to the gem's max level - Fixed quality bug introduced in 1.3.5
This commit is contained in:
@@ -2095,10 +2095,13 @@ local function performCalcs(env)
|
||||
output.CritChance = 100
|
||||
else
|
||||
local base = modDB:Sum("BASE", cfg, "CritChance")
|
||||
output.CritChance = (baseCrit + base) * calcMod(modDB, cfg, "CritChance")
|
||||
local inc = modDB:Sum("INC", cfg, "CritChance")
|
||||
local more = modDB:Sum("MORE", cfg, "CritChance")
|
||||
output.CritChance = (baseCrit + base) * (1 + inc / 100) * more
|
||||
if env.mode_effective then
|
||||
output.CritChance = output.CritChance + enemyDB:Sum("BASE", nil, "SelfExtraCritChance")
|
||||
end
|
||||
local preCapCritChance = output.CritChance
|
||||
output.CritChance = m_min(output.CritChance, 95)
|
||||
if (baseCrit + base) > 0 then
|
||||
output.CritChance = m_max(output.CritChance, 5)
|
||||
@@ -2112,8 +2115,6 @@ local function performCalcs(env)
|
||||
output.CritChance = output.CritChance * output.HitChance / 100
|
||||
end
|
||||
if breakdown and output.CritChance ~= baseCrit then
|
||||
local inc = modDB:Sum("INC", cfg, "CritChance")
|
||||
local more = modDB:Sum("MORE", cfg, "CritChance")
|
||||
local enemyExtra = enemyDB:Sum("BASE", nil, "SelfExtraCritChance")
|
||||
breakdown.CritChance = { }
|
||||
if base ~= 0 then
|
||||
@@ -2131,6 +2132,10 @@ local function performCalcs(env)
|
||||
t_insert(breakdown.CritChance, s_format("+ %g ^8(extra chance for enemy to be crit)", enemyExtra))
|
||||
end
|
||||
t_insert(breakdown.CritChance, s_format("= %g", preLuckyCritChance))
|
||||
if preCapCritChance > 95 then
|
||||
local overCap = preCapCritChance - 95
|
||||
t_insert(breakdown.CritChance, s_format("Crit is overcapped by %.2f%% (%d%% increased Critical Strike Chance)", overCap, overCap / more / (baseCrit + base) * 100))
|
||||
end
|
||||
if env.mode_effective and modDB:Sum("FLAG", cfg, "CritChanceLucky") then
|
||||
t_insert(breakdown.CritChance, "Crit Chance is Lucky:")
|
||||
t_insert(breakdown.CritChance, s_format("1 - (1 - %.4f) x (1 - %.4f)", preLuckyCritChance / 100, preLuckyCritChance / 100))
|
||||
|
||||
@@ -56,7 +56,7 @@ end
|
||||
function itemLib.parseItemRaw(item)
|
||||
item.name = "?"
|
||||
item.rarity = "UNIQUE"
|
||||
item.quality = 0
|
||||
item.quality = nil
|
||||
item.rawLines = { }
|
||||
for line in string.gmatch(item.raw .. "\r\n", "([^\r\n]*)\r?\n") do
|
||||
line = line:gsub("^%s+",""):gsub("%s+$","")
|
||||
@@ -260,12 +260,19 @@ function itemLib.parseItemRaw(item)
|
||||
if item.variantList then
|
||||
item.variant = m_min(#item.variantList, item.variant or #item.variantList)
|
||||
end
|
||||
if not item.quality then
|
||||
itemLib.normaliseQuality(item)
|
||||
end
|
||||
itemLib.buildItemModList(item)
|
||||
end
|
||||
|
||||
function itemLib.normaliseQuality(item)
|
||||
if not item.corrupted and not item.uniqueID and item.base and (item.base.armour or item.base.weapon or item.base.flask) then
|
||||
item.quality = 20
|
||||
if item.base and (item.base.armour or item.base.weapon or item.base.flask) then
|
||||
if not item.quality then
|
||||
item.quality = item.corrupted and 0 or 20
|
||||
elseif not item.uniqueID and not item.corrupted then
|
||||
item.quality = 20
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -306,7 +313,7 @@ function itemLib.createItemRaw(item)
|
||||
end
|
||||
t_insert(rawLines, "Selected Variant: "..item.variant)
|
||||
end
|
||||
if item.quality > 0 then
|
||||
if item.quality then
|
||||
t_insert(rawLines, "Quality: "..item.quality)
|
||||
end
|
||||
if item.sockets then
|
||||
|
||||
@@ -275,6 +275,7 @@ local modFlagList = {
|
||||
["with ranged weapons"] = { flags = ModFlag.WeaponRanged },
|
||||
-- Skill types
|
||||
["spell"] = { flags = ModFlag.Spell },
|
||||
["with spells"] = { flags = ModFlag.Spell },
|
||||
["for spells"] = { flags = ModFlag.Spell },
|
||||
["with attacks"] = { flags = ModFlag.Attack },
|
||||
["for attacks"] = { flags = ModFlag.Attack },
|
||||
|
||||
Reference in New Issue
Block a user