Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Calculators/Armor protection: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Sync: updated from Minecraft
SyncBot (talk | contribs)
Sync: updated from Minecraft
Line 5: Line 5:
<div style="border: 1px solid #ccc; border-radius: 4px; display: block; width: 100%; padding: 1em; box-sizing: border-box;" class="calculator-container">
<div style="border: 1px solid #ccc; border-radius: 4px; display: block; width: 100%; padding: 1em; box-sizing: border-box;" class="calculator-container">
'''Calculate percent damage reduction and damage taken'''
'''Calculate percent damage reduction and damage taken'''
<div style="display: flex; flex-direction: row; align-items: center; gap: 1rem;">
<div style="display: flex; gap: 1rem; flex-wrap: wrap; align-items: flex-start;">
{{simplecalc label|{{tooltip|Armor|See &quot;Armor&quot; in item tooltip}}:|for=armor}} <div class="cdx-text-input">
{| class="wikitable"
{{simplecalc|id=armor|type=number|default=0|min=0|max=30|step=1|decimals=0|class-live=cdx-text-input__input}}</div>
|-
</div>
! [[File:Enchanted Book JE2 BE2.png|32px]]
<div style="display: flex; flex-direction: row; align-items: center; gap: 1rem; margin-top: 0.2em;">
! [[File:Diamond Helmet (item) JE3 BE3.png|32px]]
{{simplecalc label|{{tooltip|Armor toughness|See &quot;Armor Toughness&quot; in item tooltip}}:|for=armortoughness}} <div class="cdx-text-input">
! [[File:Diamond Chestplate (item) JE2 BE2.png|32px]]
{{simplecalc|id=armortoughness|type=number|default=0|min=0|max=20|step=1|decimals=0|class-live=cdx-text-input__input}}</div>
! [[File:Diamond Leggings (item) JE3 BE3.png|32px]]
</div>
! [[File:Diamond Boots (item) JE3 BE3.png|32px]]
<div style="display: flex; flex-direction: row; align-items: center; gap: 1rem; margin-top: 0.2em;">
 
{{simplecalc label|[[Minecraft:Breach]] level:|for=breach}} <div class="cdx-text-input">
|-
{{simplecalc|id=breach|type=number|default=0|min=0|max=255|step=1|decimals=0|class-live=cdx-text-input__input}}</div>
! Protection
</div>
| {{simplecalc|id=prot1|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
<div style="display: flex; flex-direction: row; align-items: center; gap: 1rem; margin-top: 0.2em;">
| {{simplecalc|id=prot2|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
{{simplecalc label|Weapon damage:|for=damage}} <div class="cdx-text-input">
| {{simplecalc|id=prot3|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
{{simplecalc|id=damage|type=number|default=0|min=0|class-live=cdx-text-input__input}}</div>
| {{simplecalc|id=prot4|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
</div>
|-
<div style="display: flex; flex-direction: row; align-items: center; gap: 1rem; margin-top: 0.2em;">
! Proj. Prot.
{{simplecalc label|Percent damage reduction:}} <div class="cdx-text-input">
| {{simplecalc|id=proj1|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
{{simplecalc|type=plain|default=0|formula=max(0, (min(20, max(armor/5, armor - (4*damage)/(min(armortoughness, 20)+8)))/25)-breach*0.15)*100|decimals=2}}</div>
| {{simplecalc|id=proj2|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
</div>
| {{simplecalc|id=proj3|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
<div style="display: flex; flex-direction: row; align-items: center; gap: 1rem; margin-top: 0.2em;">
| {{simplecalc|id=proj4|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
{{simplecalc label|Damage taken:}} <div class="cdx-text-input">
|-
{{simplecalc|type=plain|default=0|formula=damage*(1 - max(0, (min(20, max(armor/5, armor - (4*damage)/(min(armortoughness, 20)+8)))/25)-breach*0.15))|decimals=2}}</div>
! Fire Prot.
| {{simplecalc|id=fire1|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
| {{simplecalc|id=fire2|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
| {{simplecalc|id=fire3|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
| {{simplecalc|id=fire4|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! Blast Prot.
| {{simplecalc|id=blast1|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
| {{simplecalc|id=blast2|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
| {{simplecalc|id=blast3|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
| {{simplecalc|id=blast4|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! Feather Fall.
|
|
|
| {{simplecalc|id=featherfalling|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|}
{| class="wikitable"
|-
! Armor
| {{simplecalc|id=armor|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! Armor Toughness
| {{simplecalc|id=toughness|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! [[Minecraft:Breach]]
| {{simplecalc|id=breach|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! Damage
| {{simplecalc|id=damage|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! Resistance
| {{simplecalc|id=resistance|type=number|default=0|min=0|max=100|step=1|decimals=0|class-live=cdx-text-input__input}}
|-
! Damage Type
| {{simplecalc
|id=damagetype
|type=select
|class=cdx-select
|mapping={
  "Melee": 0,
  "Projectile": 1,
  "Fire": 2,
  "Explosion": 3,
  "Fall": 4,
  "Magic": 5,
  "Sonic Boom": 6
}
}}
|}
</div>
</div>
{| class="wikitable"
|-
! Damage
| 1
| 5
| 10
| 15
| 20
| 25
| 30
| 35
| 40
| 50
| 75
| 100
| 150
| {{simplecalc
|type=plain
|default=0
|formula=damage
}}
|-
! Taken
| {{simplecalc
|type=plain
|id=taken1
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,1*(25-min(max(armor-1/(2+toughness/4),armor/5),20))/25,1*(1-min(max(min(max(armor-1/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,1*(25-min(max(armor-1/(2+toughness/4),armor/5),20))/25,1*(1-min(max(min(max(armor-1/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,1*(25-min(max(armor-1/(2+toughness/4),armor/5),20))/25,1*(1-min(max(min(max(armor-1/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),1)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,1*(25-min(max(armor-1/(2+toughness/4),armor/5),20))/25,1*(1-min(max(min(max(armor-1/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,1*(25-min(max(armor-1/(2+toughness/4),armor/5),20))/25,1*(1-min(max(min(max(armor-1/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,1*(25-min(max(armor-1/(2+toughness/4),armor/5),20))/25,1*(1-min(max(min(max(armor-1/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),1)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken2
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,5*(25-min(max(armor-5/(2+toughness/4),armor/5),20))/25,5*(1-min(max(min(max(armor-5/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,5*(25-min(max(armor-5/(2+toughness/4),armor/5),20))/25,5*(1-min(max(min(max(armor-5/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,5*(25-min(max(armor-5/(2+toughness/4),armor/5),20))/25,5*(1-min(max(min(max(armor-5/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),5)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,5*(25-min(max(armor-5/(2+toughness/4),armor/5),20))/25,5*(1-min(max(min(max(armor-5/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,5*(25-min(max(armor-5/(2+toughness/4),armor/5),20))/25,5*(1-min(max(min(max(armor-5/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,5*(25-min(max(armor-5/(2+toughness/4),armor/5),20))/25,5*(1-min(max(min(max(armor-5/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),5)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken3
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,10*(25-min(max(armor-10/(2+toughness/4),armor/5),20))/25,10*(1-min(max(min(max(armor-10/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,10*(25-min(max(armor-10/(2+toughness/4),armor/5),20))/25,10*(1-min(max(min(max(armor-10/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,10*(25-min(max(armor-10/(2+toughness/4),armor/5),20))/25,10*(1-min(max(min(max(armor-10/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),10)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,10*(25-min(max(armor-10/(2+toughness/4),armor/5),20))/25,10*(1-min(max(min(max(armor-10/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,10*(25-min(max(armor-10/(2+toughness/4),armor/5),20))/25,10*(1-min(max(min(max(armor-10/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,10*(25-min(max(armor-10/(2+toughness/4),armor/5),20))/25,10*(1-min(max(min(max(armor-10/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),10)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken4
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,15*(25-min(max(armor-15/(2+toughness/4),armor/5),20))/25,15*(1-min(max(min(max(armor-15/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,15*(25-min(max(armor-15/(2+toughness/4),armor/5),20))/25,15*(1-min(max(min(max(armor-15/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,15*(25-min(max(armor-15/(2+toughness/4),armor/5),20))/25,15*(1-min(max(min(max(armor-15/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),15)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,15*(25-min(max(armor-15/(2+toughness/4),armor/5),20))/25,15*(1-min(max(min(max(armor-15/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,15*(25-min(max(armor-15/(2+toughness/4),armor/5),20))/25,15*(1-min(max(min(max(armor-15/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,15*(25-min(max(armor-15/(2+toughness/4),armor/5),20))/25,15*(1-min(max(min(max(armor-15/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),15)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken5
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,20*(25-min(max(armor-20/(2+toughness/4),armor/5),20))/25,20*(1-min(max(min(max(armor-20/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,20*(25-min(max(armor-20/(2+toughness/4),armor/5),20))/25,20*(1-min(max(min(max(armor-20/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,20*(25-min(max(armor-20/(2+toughness/4),armor/5),20))/25,20*(1-min(max(min(max(armor-20/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),20)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,20*(25-min(max(armor-20/(2+toughness/4),armor/5),20))/25,20*(1-min(max(min(max(armor-20/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,20*(25-min(max(armor-20/(2+toughness/4),armor/5),20))/25,20*(1-min(max(min(max(armor-20/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,20*(25-min(max(armor-20/(2+toughness/4),armor/5),20))/25,20*(1-min(max(min(max(armor-20/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),20)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken6
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,25*(25-min(max(armor-25/(2+toughness/4),armor/5),20))/25,25*(1-min(max(min(max(armor-25/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,25*(25-min(max(armor-25/(2+toughness/4),armor/5),20))/25,25*(1-min(max(min(max(armor-25/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,25*(25-min(max(armor-25/(2+toughness/4),armor/5),20))/25,25*(1-min(max(min(max(armor-25/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),25)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,25*(25-min(max(armor-25/(2+toughness/4),armor/5),20))/25,25*(1-min(max(min(max(armor-25/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,25*(25-min(max(armor-25/(2+toughness/4),armor/5),20))/25,25*(1-min(max(min(max(armor-25/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,25*(25-min(max(armor-25/(2+toughness/4),armor/5),20))/25,25*(1-min(max(min(max(armor-25/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),25)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken7
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,30*(25-min(max(armor-30/(2+toughness/4),armor/5),20))/25,30*(1-min(max(min(max(armor-30/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,30*(25-min(max(armor-30/(2+toughness/4),armor/5),20))/25,30*(1-min(max(min(max(armor-30/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,30*(25-min(max(armor-30/(2+toughness/4),armor/5),20))/25,30*(1-min(max(min(max(armor-30/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),30)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,30*(25-min(max(armor-30/(2+toughness/4),armor/5),20))/25,30*(1-min(max(min(max(armor-30/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,30*(25-min(max(armor-30/(2+toughness/4),armor/5),20))/25,30*(1-min(max(min(max(armor-30/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,30*(25-min(max(armor-30/(2+toughness/4),armor/5),20))/25,30*(1-min(max(min(max(armor-30/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),30)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken8
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,35*(25-min(max(armor-35/(2+toughness/4),armor/5),20))/25,35*(1-min(max(min(max(armor-35/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,35*(25-min(max(armor-35/(2+toughness/4),armor/5),20))/25,35*(1-min(max(min(max(armor-35/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,35*(25-min(max(armor-35/(2+toughness/4),armor/5),20))/25,35*(1-min(max(min(max(armor-35/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),35)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,35*(25-min(max(armor-35/(2+toughness/4),armor/5),20))/25,35*(1-min(max(min(max(armor-35/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,35*(25-min(max(armor-35/(2+toughness/4),armor/5),20))/25,35*(1-min(max(min(max(armor-35/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,35*(25-min(max(armor-35/(2+toughness/4),armor/5),20))/25,35*(1-min(max(min(max(armor-35/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),35)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken9
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,40*(25-min(max(armor-40/(2+toughness/4),armor/5),20))/25,40*(1-min(max(min(max(armor-40/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,40*(25-min(max(armor-40/(2+toughness/4),armor/5),20))/25,40*(1-min(max(min(max(armor-40/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,40*(25-min(max(armor-40/(2+toughness/4),armor/5),20))/25,40*(1-min(max(min(max(armor-40/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),40)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,40*(25-min(max(armor-40/(2+toughness/4),armor/5),20))/25,40*(1-min(max(min(max(armor-40/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,40*(25-min(max(armor-40/(2+toughness/4),armor/5),20))/25,40*(1-min(max(min(max(armor-40/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,40*(25-min(max(armor-40/(2+toughness/4),armor/5),20))/25,40*(1-min(max(min(max(armor-40/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),40)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken10
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,50*(25-min(max(armor-50/(2+toughness/4),armor/5),20))/25,50*(1-min(max(min(max(armor-50/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,50*(25-min(max(armor-50/(2+toughness/4),armor/5),20))/25,50*(1-min(max(min(max(armor-50/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,50*(25-min(max(armor-50/(2+toughness/4),armor/5),20))/25,50*(1-min(max(min(max(armor-50/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),50)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,50*(25-min(max(armor-50/(2+toughness/4),armor/5),20))/25,50*(1-min(max(min(max(armor-50/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,50*(25-min(max(armor-50/(2+toughness/4),armor/5),20))/25,50*(1-min(max(min(max(armor-50/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,50*(25-min(max(armor-50/(2+toughness/4),armor/5),20))/25,50*(1-min(max(min(max(armor-50/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),50)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken11
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,75*(25-min(max(armor-75/(2+toughness/4),armor/5),20))/25,75*(1-min(max(min(max(armor-75/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,75*(25-min(max(armor-75/(2+toughness/4),armor/5),20))/25,75*(1-min(max(min(max(armor-75/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,75*(25-min(max(armor-75/(2+toughness/4),armor/5),20))/25,75*(1-min(max(min(max(armor-75/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),75)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,75*(25-min(max(armor-75/(2+toughness/4),armor/5),20))/25,75*(1-min(max(min(max(armor-75/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,75*(25-min(max(armor-75/(2+toughness/4),armor/5),20))/25,75*(1-min(max(min(max(armor-75/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,75*(25-min(max(armor-75/(2+toughness/4),armor/5),20))/25,75*(1-min(max(min(max(armor-75/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),75)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken12
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,100*(25-min(max(armor-100/(2+toughness/4),armor/5),20))/25,100*(1-min(max(min(max(armor-100/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,100*(25-min(max(armor-100/(2+toughness/4),armor/5),20))/25,100*(1-min(max(min(max(armor-100/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,100*(25-min(max(armor-100/(2+toughness/4),armor/5),20))/25,100*(1-min(max(min(max(armor-100/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),100)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,100*(25-min(max(armor-100/(2+toughness/4),armor/5),20))/25,100*(1-min(max(min(max(armor-100/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,100*(25-min(max(armor-100/(2+toughness/4),armor/5),20))/25,100*(1-min(max(min(max(armor-100/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,100*(25-min(max(armor-100/(2+toughness/4),armor/5),20))/25,100*(1-min(max(min(max(armor-100/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),100)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken13
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,150*(25-min(max(armor-150/(2+toughness/4),armor/5),20))/25,150*(1-min(max(min(max(armor-150/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,150*(25-min(max(armor-150/(2+toughness/4),armor/5),20))/25,150*(1-min(max(min(max(armor-150/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,150*(25-min(max(armor-150/(2+toughness/4),armor/5),20))/25,150*(1-min(max(min(max(armor-150/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),150)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,150*(25-min(max(armor-150/(2+toughness/4),armor/5),20))/25,150*(1-min(max(min(max(armor-150/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,150*(25-min(max(armor-150/(2+toughness/4),armor/5),20))/25,150*(1-min(max(min(max(armor-150/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,150*(25-min(max(armor-150/(2+toughness/4),armor/5),20))/25,150*(1-min(max(min(max(armor-150/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),150)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
| {{simplecalc
|type=plain
|id=taken14
|formula=(round((ifgreater(resistance,0,max(0,ifequal(damagetype,0,ifequal(breach,0,damage*(25-min(max(armor-damage/(2+toughness/4),armor/5),20))/25,damage*(1-min(max(min(max(armor-damage/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,damage*(25-min(max(armor-damage/(2+toughness/4),armor/5),20))/25,damage*(1-min(max(min(max(armor-damage/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,damage*(25-min(max(armor-damage/(2+toughness/4),armor/5),20))/25,damage*(1-min(max(min(max(armor-damage/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),damage)))*(25-5*resistance)/25),ifequal(damagetype,0,ifequal(breach,0,damage*(25-min(max(armor-damage/(2+toughness/4),armor/5),20))/25,damage*(1-min(max(min(max(armor-damage/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,1,ifequal(breach,0,damage*(25-min(max(armor-damage/(2+toughness/4),armor/5),20))/25,damage*(1-min(max(min(max(armor-damage/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),ifequal(damagetype,3,ifequal(breach,0,damage*(25-min(max(armor-damage/(2+toughness/4),armor/5),20))/25,damage*(1-min(max(min(max(armor-damage/(2+toughness/4),armor/5),20)/25-breach*0.15,0),1))),damage)))))*(1-(min(max(ifequal(damagetype,6,0,prot1+prot2+prot3+prot4)+ifequal(damagetype,1,2*(proj1+proj2+proj3+proj4),0)+ifequal(damagetype,2,2*(fire1+fire2+fire3+fire4),0)+ifequal(damagetype,3,2*(blast1+blast2+blast3+blast4),0)+ifequal(damagetype,4,3*featherfalling,0),0),20))/25),3))
}}
|-
! Reduction
| {{simplecalc
|type=plain
|formula=round(1 - taken1, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken2/5, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken3/10, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken4/15, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken5/20, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken6/25, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken7/30, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken8/35, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken9/40, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken10/50, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken11/75, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken12/100, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken13/150, 3)
}}
| {{simplecalc
|type=plain
|formula=round(1 - taken14/damage, 3)
}}
|}
</div>
</div>
</onlyinclude>
</onlyinclude>

Revision as of 11:02, 3 August 2026

Template:Wip This tool calculates how much damage a given amount of armor protects against, with some other parameters. The outputs are rounded to 2 decimal places.




This tool calculates the minimum combinations of armor and toughness points required to block the level of damage specified.



Navigation

Template:Navbox calculators

Minecraft:ko:계산기/피해 감소 Minecraft:zh:计算器/伤害减免 Minecraft:pt:Calculadoras/Proteção de armadura