Calculator:Combat/Biting Precise and Eruptive (2024)

List of damage increases for various Precise and Eruptive combinations, given a certain rank of Biting (and whether or not Erethdor's grimoire is active).
Calculator:Combat/Biting Precise and Eruptive (1) = perks you can get on one gizmo (there exists a combination with chance12000).
Calculator:Combat/Biting Precise and Eruptive (2) = perks you can not get on one gizmo (all possibile combinations have chance<12000).

Biting rankname=bitRank2|type=int|range=0,4|sublist=init
Is Biting on level 20 gear?name=isLevel20_2|type=select|range=No,Yes|sublist=init
Is Erethdor's grimoire active?name=grimoire2|type=select|range=No,Yes|sublist=init
Min hit of abilityname=abilityMinHitIn2|type=number|range=0,2000|value=90|sublist=init
Max hit of abilityname=abilityMaxHitIn2|type=number|range=0,2000|value=110|sublist=init
Average hit without perks/grimoirename=normalAverageHitOut2|type=output

type=button|sublist=init|value=Calculate

name=wrongInput2|type=output

init|

let(precRank, 6)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(normalAverageHitOut2, normalAverageHit) let(minHitP6E4, minHit) let(maxHitP6E4, maxHit) let(averageHitP6E4, perkAverageHit) let(damageIncreaseP6E4, damageIncrease) let(wrongInput2, "")

}{

 let(normalAverageHitOut2, 60) let(minHitP6E4, 20) let(maxHitP6E4, 100) let(averageHitP6E4, 60) let(damageIncreaseP6E4, 0) let(wrongInput2, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 6)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP6E3, minHit) let(maxHitP6E3, maxHit) let(averageHitP6E3, perkAverageHit) let(damageIncreaseP6E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP6E3, 20) let(maxHitP6E3, 100) let(averageHitP6E3, 60) let(damageIncreaseP6E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 6)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP6E2, minHit) let(maxHitP6E2, maxHit) let(averageHitP6E2, perkAverageHit) let(damageIncreaseP6E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP6E2, 20) let(maxHitP6E2, 100) let(averageHitP6E2, 60) let(damageIncreaseP6E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 6)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP6E1, minHit) let(maxHitP6E1, maxHit) let(averageHitP6E1, perkAverageHit) let(damageIncreaseP6E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP6E1, 20) let(maxHitP6E1, 100) let(averageHitP6E1, 60) let(damageIncreaseP6E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 6)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP6E0, minHit) let(maxHitP6E0, maxHit) let(averageHitP6E0, perkAverageHit) let(damageIncreaseP6E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP6E0, 20) let(maxHitP6E0, 100) let(averageHitP6E0, 60) let(damageIncreaseP6E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 5)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP5E4, minHit) let(maxHitP5E4, maxHit) let(averageHitP5E4, perkAverageHit) let(damageIncreaseP5E4, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP5E4, 20) let(maxHitP5E4, 100) let(averageHitP5E4, 60) let(damageIncreaseP5E4, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 5)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP5E3, minHit) let(maxHitP5E3, maxHit) let(averageHitP5E3, perkAverageHit) let(damageIncreaseP5E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP5E3, 20) let(maxHitP5E3, 100) let(averageHitP5E3, 60) let(damageIncreaseP5E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 5)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP5E2, minHit) let(maxHitP5E2, maxHit) let(averageHitP5E2, perkAverageHit) let(damageIncreaseP5E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP5E2, 20) let(maxHitP5E2, 100) let(averageHitP5E2, 60) let(damageIncreaseP5E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 5)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP5E1, minHit) let(maxHitP5E1, maxHit) let(averageHitP5E1, perkAverageHit) let(damageIncreaseP5E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP5E1, 20) let(maxHitP5E1, 100) let(averageHitP5E1, 60) let(damageIncreaseP5E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 5)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP5E0, minHit) let(maxHitP5E0, maxHit) let(averageHitP5E0, perkAverageHit) let(damageIncreaseP5E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP5E0, 20) let(maxHitP5E0, 100) let(averageHitP5E0, 60) let(damageIncreaseP5E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 4)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP4E4, minHit) let(maxHitP4E4, maxHit) let(averageHitP4E4, perkAverageHit) let(damageIncreaseP4E4, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP4E4, 20) let(maxHitP4E4, 100) let(averageHitP4E4, 60) let(damageIncreaseP4E4, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 4)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP4E3, minHit) let(maxHitP4E3, maxHit) let(averageHitP4E3, perkAverageHit) let(damageIncreaseP4E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP4E3, 20) let(maxHitP4E3, 100) let(averageHitP4E3, 60) let(damageIncreaseP4E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 4)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP4E2, minHit) let(maxHitP4E2, maxHit) let(averageHitP4E2, perkAverageHit) let(damageIncreaseP4E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP4E2, 20) let(maxHitP4E2, 100) let(averageHitP4E2, 60) let(damageIncreaseP4E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 4)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP4E1, minHit) let(maxHitP4E1, maxHit) let(averageHitP4E1, perkAverageHit) let(damageIncreaseP4E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP4E1, 20) let(maxHitP4E1, 100) let(averageHitP4E1, 60) let(damageIncreaseP4E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 4)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP4E0, minHit) let(maxHitP4E0, maxHit) let(averageHitP4E0, perkAverageHit) let(damageIncreaseP4E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP4E0, 20) let(maxHitP4E0, 100) let(averageHitP4E0, 60) let(damageIncreaseP4E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 3)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP3E4, minHit) let(maxHitP3E4, maxHit) let(averageHitP3E4, perkAverageHit) let(damageIncreaseP3E4, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP3E4, 20) let(maxHitP3E4, 100) let(averageHitP3E4, 60) let(damageIncreaseP3E4, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 3)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP3E3, minHit) let(maxHitP3E3, maxHit) let(averageHitP3E3, perkAverageHit) let(damageIncreaseP3E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP3E3, 20) let(maxHitP3E3, 100) let(averageHitP3E3, 60) let(damageIncreaseP3E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 3)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP3E2, minHit) let(maxHitP3E2, maxHit) let(averageHitP3E2, perkAverageHit) let(damageIncreaseP3E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP3E2, 20) let(maxHitP3E2, 100) let(averageHitP3E2, 60) let(damageIncreaseP3E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 3)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP3E1, minHit) let(maxHitP3E1, maxHit) let(averageHitP3E1, perkAverageHit) let(damageIncreaseP3E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP3E1, 20) let(maxHitP3E1, 100) let(averageHitP3E1, 60) let(damageIncreaseP3E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 3)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP3E0, minHit) let(maxHitP3E0, maxHit) let(averageHitP3E0, perkAverageHit) let(damageIncreaseP3E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP3E0, 20) let(maxHitP3E0, 100) let(averageHitP3E0, 60) let(damageIncreaseP3E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 2)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP2E4, minHit) let(maxHitP2E4, maxHit) let(averageHitP2E4, perkAverageHit) let(damageIncreaseP2E4, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP2E4, 20) let(maxHitP2E4, 100) let(averageHitP2E4, 60) let(damageIncreaseP2E4, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 2)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP2E3, minHit) let(maxHitP2E3, maxHit) let(averageHitP2E3, perkAverageHit) let(damageIncreaseP2E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP2E3, 20) let(maxHitP2E3, 100) let(averageHitP2E3, 60) let(damageIncreaseP2E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 2)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP2E2, minHit) let(maxHitP2E2, maxHit) let(averageHitP2E2, perkAverageHit) let(damageIncreaseP2E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP2E2, 20) let(maxHitP2E2, 100) let(averageHitP2E2, 60) let(damageIncreaseP2E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 2)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP2E1, minHit) let(maxHitP2E1, maxHit) let(averageHitP2E1, perkAverageHit) let(damageIncreaseP2E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP2E1, 20) let(maxHitP2E1, 100) let(averageHitP2E1, 60) let(damageIncreaseP2E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 2)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP2E0, minHit) let(maxHitP2E0, maxHit) let(averageHitP2E0, perkAverageHit) let(damageIncreaseP2E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP2E0, 20) let(maxHitP2E0, 100) let(averageHitP2E0, 60) let(damageIncreaseP2E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 1)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP1E4, minHit) let(maxHitP1E4, maxHit) let(averageHitP1E4, perkAverageHit) let(damageIncreaseP1E4, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP1E4, 20) let(maxHitP1E4, 100) let(averageHitP1E4, 60) let(damageIncreaseP1E4, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 1)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP1E3, minHit) let(maxHitP1E3, maxHit) let(averageHitP1E3, perkAverageHit) let(damageIncreaseP1E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP1E3, 20) let(maxHitP1E3, 100) let(averageHitP1E3, 60) let(damageIncreaseP1E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 1)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP1E2, minHit) let(maxHitP1E2, maxHit) let(averageHitP1E2, perkAverageHit) let(damageIncreaseP1E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP1E2, 20) let(maxHitP1E2, 100) let(averageHitP1E2, 60) let(damageIncreaseP1E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 1)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP1E1, minHit) let(maxHitP1E1, maxHit) let(averageHitP1E1, perkAverageHit) let(damageIncreaseP1E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP1E1, 20) let(maxHitP1E1, 100) let(averageHitP1E1, 60) let(damageIncreaseP1E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 1)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP1E0, minHit) let(maxHitP1E0, maxHit) let(averageHitP1E0, perkAverageHit) let(damageIncreaseP1E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP1E0, 20) let(maxHitP1E0, 100) let(averageHitP1E0, 60) let(damageIncreaseP1E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 0)let(eqRank, 4)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP0E4, minHit) let(maxHitP0E4, maxHit) let(averageHitP0E4, perkAverageHit) let(damageIncreaseP0E4, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP0E4, 20) let(maxHitP0E4, 100) let(averageHitP0E4, 60) let(damageIncreaseP0E4, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 0)let(eqRank, 3)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP0E3, minHit) let(maxHitP0E3, maxHit) let(averageHitP0E3, perkAverageHit) let(damageIncreaseP0E3, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP0E3, 20) let(maxHitP0E3, 100) let(averageHitP0E3, 60) let(damageIncreaseP0E3, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 0)let(eqRank, 2)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP0E2, minHit) let(maxHitP0E2, maxHit) let(averageHitP0E2, perkAverageHit) let(damageIncreaseP0E2, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP0E2, 20) let(maxHitP0E2, 100) let(averageHitP0E2, 60) let(damageIncreaseP0E2, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 0)let(eqRank, 1)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP0E1, minHit) let(maxHitP0E1, maxHit) let(averageHitP0E1, perkAverageHit) let(damageIncreaseP0E1, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP0E1, 20) let(maxHitP0E1, 100) let(averageHitP0E1, 60) let(damageIncreaseP0E1, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}


let(precRank, 0)let(eqRank, 0)let(bitRank, bitRank2)let(minHit, abilityMinHitIn2)let(maxHit, abilityMaxHitIn2)let(normalAverageHit, (maxHit + minHit)/2)let(isLevel20, isLevel20_2)let(grim, grimoire2)let(pvp, isPvp2)

if(minHit < maxHit){

 let(minHit, minHit + 0.015 * precRank * maxHit)
 let(maxHit, maxHit * (1 + 0.005* eqRank)) let(minHit, minHit * (1 + 0.005* eqRank))
 let(bitChance, 0.02 * bitRank * (1 + isLevel20 / 10.0)) let(grimEffect, .12 * grim) let(perkAverageHit, (1.0 + 0.5 * (bitChance + grimEffect)) * (maxHit + minHit) / 2)
 let(damageIncrease, (perkAverageHit - normalAverageHit) / normalAverageHit * 100)
 let(normalAverageHit, round(normalAverageHit * 1000)) let(normalAverageHit, normalAverageHit / 1000) let(minHit, round(minHit * 1000)) let(minHit, minHit / 1000) let(maxHit, round(maxHit * 1000)) let(maxHit, maxHit / 1000) let(perkAverageHit, round(perkAverageHit * 1000)) let(perkAverageHit, perkAverageHit / 1000) let(damageIncrease, round(damageIncrease * 1000)) let(damageIncrease, damageIncrease / 1000)
 let(n, normalAverageHit) let(minHitP0E0, minHit) let(maxHitP0E0, maxHit) let(averageHitP0E0, perkAverageHit) let(damageIncreaseP0E0, damageIncrease) let(n, "")

}{

 let(n, 60) let(minHitP0E0, 20) let(maxHitP0E0, 100) let(averageHitP0E0, 60) let(damageIncreaseP0E0, 0) let(n, "Please give a correct minimum and maximum ability damage.")

}

Calculator:Combat/Biting Precise and Eruptive (3)PEMin hitMax hitAverage hit% damage
increase
Calculator:Combat/Biting Precise and Eruptive (4)64name=minHitP6E4|type=outputname=maxHitP6E4|type=outputname=averageHitP6E4|type=outputname=damageIncreaseP6E4|type=output
Calculator:Combat/Biting Precise and Eruptive (9)63name=minHitP6E3|type=outputname=maxHitP6E3|type=outputname=averageHitP6E3|type=outputname=damageIncreaseP6E3|type=output
Calculator:Combat/Biting Precise and Eruptive (14)62name=minHitP6E2|type=outputname=maxHitP6E2|type=outputname=averageHitP6E2|type=outputname=damageIncreaseP6E2|type=output
Calculator:Combat/Biting Precise and Eruptive (19)61name=minHitP6E1|type=outputname=maxHitP6E1|type=outputname=averageHitP6E1|type=outputname=damageIncreaseP6E1|type=output
Calculator:Combat/Biting Precise and Eruptive (24)60name=minHitP6E0|type=outputname=maxHitP6E0|type=outputname=averageHitP6E0|type=outputname=damageIncreaseP6E0|type=output
Calculator:Combat/Biting Precise and Eruptive (28)54name=minHitP5E4|type=outputname=maxHitP5E4|type=outputname=averageHitP5E4|type=outputname=damageIncreaseP5E4|type=output
Calculator:Combat/Biting Precise and Eruptive (33)53name=minHitP5E3|type=outputname=maxHitP5E3|type=outputname=averageHitP5E3|type=outputname=damageIncreaseP5E3|type=output
Calculator:Combat/Biting Precise and Eruptive (38)52name=minHitP5E2|type=outputname=maxHitP5E2|type=outputname=averageHitP5E2|type=outputname=damageIncreaseP5E2|type=output
Calculator:Combat/Biting Precise and Eruptive (43)51name=minHitP5E1|type=outputname=maxHitP5E1|type=outputname=averageHitP5E1|type=outputname=damageIncreaseP5E1|type=output
Calculator:Combat/Biting Precise and Eruptive (48)50name=minHitP5E0|type=outputname=maxHitP5E0|type=outputname=averageHitP5E0|type=outputname=damageIncreaseP5E0|type=output
Calculator:Combat/Biting Precise and Eruptive (52)44name=minHitP4E4|type=outputname=maxHitP4E4|type=outputname=averageHitP4E4|type=outputname=damageIncreaseP4E4|type=output
Calculator:Combat/Biting Precise and Eruptive (57)43name=minHitP4E3|type=outputname=maxHitP4E3|type=outputname=averageHitP4E3|type=outputname=damageIncreaseP4E3|type=output
Calculator:Combat/Biting Precise and Eruptive (62)42name=minHitP4E2|type=outputname=maxHitP4E2|type=outputname=averageHitP4E2|type=outputname=damageIncreaseP4E2|type=output
Calculator:Combat/Biting Precise and Eruptive (67)41name=minHitP4E1|type=outputname=maxHitP4E1|type=outputname=averageHitP4E1|type=outputname=damageIncreaseP4E1|type=output
Calculator:Combat/Biting Precise and Eruptive (72)40name=minHitP4E0|type=outputname=maxHitP4E0|type=outputname=averageHitP4E0|type=outputname=damageIncreaseP4E0|type=output
Calculator:Combat/Biting Precise and Eruptive (76)34name=minHitP3E4|type=outputname=maxHitP3E4|type=outputname=averageHitP3E4|type=outputname=damageIncreaseP3E4|type=output
Calculator:Combat/Biting Precise and Eruptive (81)33name=minHitP3E3|type=outputname=maxHitP3E3|type=outputname=averageHitP3E3|type=outputname=damageIncreaseP3E3|type=output
Calculator:Combat/Biting Precise and Eruptive (86)32name=minHitP3E2|type=outputname=maxHitP3E2|type=outputname=averageHitP3E2|type=outputname=damageIncreaseP3E2|type=output
Calculator:Combat/Biting Precise and Eruptive (91)31name=minHitP3E1|type=outputname=maxHitP3E1|type=outputname=averageHitP3E1|type=outputname=damageIncreaseP3E1|type=output
Calculator:Combat/Biting Precise and Eruptive (96)30name=minHitP3E0|type=outputname=maxHitP3E0|type=outputname=averageHitP3E0|type=outputname=damageIncreaseP3E0|type=output
Calculator:Combat/Biting Precise and Eruptive (100)24name=minHitP2E4|type=outputname=maxHitP2E4|type=outputname=averageHitP2E4|type=outputname=damageIncreaseP2E4|type=output
Calculator:Combat/Biting Precise and Eruptive (105)23name=minHitP2E3|type=outputname=maxHitP2E3|type=outputname=averageHitP2E3|type=outputname=damageIncreaseP2E3|type=output
Calculator:Combat/Biting Precise and Eruptive (110)22name=minHitP2E2|type=outputname=maxHitP2E2|type=outputname=averageHitP2E2|type=outputname=damageIncreaseP2E2|type=output
Calculator:Combat/Biting Precise and Eruptive (115)21name=minHitP2E1|type=outputname=maxHitP2E1|type=outputname=averageHitP2E1|type=outputname=damageIncreaseP2E1|type=output
Calculator:Combat/Biting Precise and Eruptive (120)20name=minHitP2E0|type=outputname=maxHitP2E0|type=outputname=averageHitP2E0|type=outputname=damageIncreaseP2E0|type=output
Calculator:Combat/Biting Precise and Eruptive (124)14name=minHitP1E4|type=outputname=maxHitP1E4|type=outputname=averageHitP1E4|type=outputname=damageIncreaseP1E4|type=output
Calculator:Combat/Biting Precise and Eruptive (129)13name=minHitP1E3|type=outputname=maxHitP1E3|type=outputname=averageHitP1E3|type=outputname=damageIncreaseP1E3|type=output
Calculator:Combat/Biting Precise and Eruptive (134)12name=minHitP1E2|type=outputname=maxHitP1E2|type=outputname=averageHitP1E2|type=outputname=damageIncreaseP1E2|type=output
Calculator:Combat/Biting Precise and Eruptive (139)11name=minHitP1E1|type=outputname=maxHitP1E1|type=outputname=averageHitP1E1|type=outputname=damageIncreaseP1E1|type=output
Calculator:Combat/Biting Precise and Eruptive (144)10name=minHitP1E0|type=outputname=maxHitP1E0|type=outputname=averageHitP1E0|type=outputname=damageIncreaseP1E0|type=output
Calculator:Combat/Biting Precise and Eruptive (148)04name=minHitP0E4|type=outputname=maxHitP0E4|type=outputname=averageHitP0E4|type=outputname=damageIncreaseP0E4|type=output
Calculator:Combat/Biting Precise and Eruptive (152)03name=minHitP0E3|type=outputname=maxHitP0E3|type=outputname=averageHitP0E3|type=outputname=damageIncreaseP0E3|type=output
Calculator:Combat/Biting Precise and Eruptive (156)02name=minHitP0E2|type=outputname=maxHitP0E2|type=outputname=averageHitP0E2|type=outputname=damageIncreaseP0E2|type=output
Calculator:Combat/Biting Precise and Eruptive (160)01name=minHitP0E1|type=outputname=maxHitP0E1|type=outputname=averageHitP0E1|type=outputname=damageIncreaseP0E1|type=output
Calculator:Combat/Biting Precise and Eruptive (164)00name=minHitP0E0|type=outputname=maxHitP0E0|type=outputname=averageHitP0E0|type=outputname=damageIncreaseP0E0|type=output
Calculator:Combat/Biting Precise and Eruptive (2024)
Top Articles
Latest Posts
Article information

Author: Duane Harber

Last Updated:

Views: 5545

Rating: 4 / 5 (71 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Duane Harber

Birthday: 1999-10-17

Address: Apt. 404 9899 Magnolia Roads, Port Royceville, ID 78186

Phone: +186911129794335

Job: Human Hospitality Planner

Hobby: Listening to music, Orienteering, Knapping, Dance, Mountain biking, Fishing, Pottery

Introduction: My name is Duane Harber, I am a modern, clever, handsome, fair, agreeable, inexpensive, beautiful person who loves writing and wants to share my knowledge and understanding with you.