Editing Template:True Melee DPS Calculator

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 89: Line 89:
 
2.1.1.1 First weapon attack
 
2.1.1.1 First weapon attack
 
-->{{#if: {{#var:attack1Type}} | {{#vardefine:attack1InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack1Type}}
 
-->{{#if: {{#var:attack1Type}} | {{#vardefine:attack1InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack1Type}}
 +
| #default =
 +
    {{#vardefineecho:attack1Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 +
    * (1 + ({{#vardefineecho:attack1AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 +
    * {{#show:{{#var:weapon}}|?Attack 1 Chance Factor|link=none|default=1}}
 +
    / {{#vardefineecho:attack1Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
  | Blunt | Crush | Demolish | Poke =
 
  | Blunt | Crush | Demolish | Poke =
 
     {{#vardefineecho:attack1Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     {{#vardefineecho:attack1Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     * (1 + ({{#vardefineecho:attack1AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
 
     * (1 + ({{#vardefineecho:attack1AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
    * {{#show:{{#var:weapon}}|?Attack 1 Chance Factor|link=none|default=1}}
 
    / {{#vardefineecho:attack1Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
| #default =
 
    {{#vardefineecho:attack1Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 
    * (1 + ({{#vardefineecho:attack1AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 
 
     * {{#show:{{#var:weapon}}|?Attack 1 Chance Factor|link=none|default=1}}
 
     * {{#show:{{#var:weapon}}|?Attack 1 Chance Factor|link=none|default=1}}
 
     / {{#vardefineecho:attack1Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
     / {{#vardefineecho:attack1Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 1 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
Line 102: Line 102:
 
2.1.1.2 Second weapon attack
 
2.1.1.2 Second weapon attack
 
-->{{#if: {{#var:attack2Type}} | {{#vardefine:attack2InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack2Type}}
 
-->{{#if: {{#var:attack2Type}} | {{#vardefine:attack2InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack2Type}}
 +
| #default =
 +
    {{#vardefineecho:attack2Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 +
    * (1 + ({{#vardefineecho:attack2AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 +
    * {{#show:{{#var:weapon}}|?Attack 2 Chance Factor|link=none|default=1}}
 +
    / {{#vardefineecho:attack2Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
  | Blunt | Crush | Demolish | Poke =
 
  | Blunt | Crush | Demolish | Poke =
 
     {{#vardefineecho:attack2Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     {{#vardefineecho:attack2Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     * (1 + ({{#vardefineecho:attack2AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
 
     * (1 + ({{#vardefineecho:attack2AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
    * {{#show:{{#var:weapon}}|?Attack 2 Chance Factor|link=none|default=1}}
 
    / {{#vardefineecho:attack2Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
| #default =
 
    {{#vardefineecho:attack2Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 
    * (1 + ({{#vardefineecho:attack2AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 
 
     * {{#show:{{#var:weapon}}|?Attack 2 Chance Factor|link=none|default=1}}
 
     * {{#show:{{#var:weapon}}|?Attack 2 Chance Factor|link=none|default=1}}
 
     / {{#vardefineecho:attack2Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
     / {{#vardefineecho:attack2Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 2 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
Line 115: Line 115:
 
2.1.1.3 Third weapon attack
 
2.1.1.3 Third weapon attack
 
-->{{#if: {{#var:attack3Type}} | {{#vardefine:attack3InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack3Type}}
 
-->{{#if: {{#var:attack3Type}} | {{#vardefine:attack3InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack3Type}}
 +
| #default =
 +
    {{#vardefineecho:attack3Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 +
    * (1 + ({{#vardefineecho:attack3AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 +
    * {{#show:{{#var:weapon}}|?Attack 3 Chance Factor|link=none|default=1}}
 +
    / {{#vardefineecho:attack3Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
  | Blunt | Crush | Demolish | Poke =
 
  | Blunt | Crush | Demolish | Poke =
 
     {{#vardefineecho:attack3Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     {{#vardefineecho:attack3Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     * (1 + ({{#vardefineecho:attack3AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
 
     * (1 + ({{#vardefineecho:attack3AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
    * {{#show:{{#var:weapon}}|?Attack 3 Chance Factor|link=none|default=1}}
 
    / {{#vardefineecho:attack3Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
| #default =
 
    {{#vardefineecho:attack3Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 
    * (1 + ({{#vardefineecho:attack3AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 
 
     * {{#show:{{#var:weapon}}|?Attack 3 Chance Factor|link=none|default=1}}
 
     * {{#show:{{#var:weapon}}|?Attack 3 Chance Factor|link=none|default=1}}
 
     / {{#vardefineecho:attack3Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
     / {{#vardefineecho:attack3Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 3 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
Line 128: Line 128:
 
2.1.1.4 Fourth weapon attack
 
2.1.1.4 Fourth weapon attack
 
-->{{#if: {{#var:attack4Type}} | {{#vardefine:attack4InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack4Type}}
 
-->{{#if: {{#var:attack4Type}} | {{#vardefine:attack4InitialSelectionWeight | {{#expr: {{#switch: {{#var:attack4Type}}
 +
| #default =
 +
    {{#vardefineecho:attack4Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 +
    * (1 + ({{#vardefineecho:attack4AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 +
    * {{#show:{{#var:weapon}}|?Attack 4 Chance Factor|link=none|default=1}}
 +
    / {{#vardefineecho:attack4Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
  | Blunt | Crush | Demolish | Poke =
 
  | Blunt | Crush | Demolish | Poke =
 
     {{#vardefineecho:attack4Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     {{#vardefineecho:attack4Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Damage|link=none}} * {{#var:bluntAndQualityFactor}} }} }}
 
     * (1 + ({{#vardefineecho:attack4AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
 
     * (1 + ({{#vardefineecho:attack4AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 AP|link=none}} * {{#var:bluntAndQualityFactor}} }} }}/100))
    * {{#show:{{#var:weapon}}|?Attack 4 Chance Factor|link=none|default=1}}
 
    / {{#vardefineecho:attack4Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
| #default =
 
    {{#vardefineecho:attack4Damage | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Damage|link=none}} * {{#var:sharpAndQualityFactor}} }} }}
 
    * (1 + ({{#vardefineecho:attack4AP | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 AP|link=none}} * {{#var:sharpAndQualityFactor}} }} }}/100))
 
 
     * {{#show:{{#var:weapon}}|?Attack 4 Chance Factor|link=none|default=1}}
 
     * {{#show:{{#var:weapon}}|?Attack 4 Chance Factor|link=none|default=1}}
 
     / {{#vardefineecho:attack4Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
 
     / {{#vardefineecho:attack4Cooldown | {{#expr: {{#show:{{#var:weapon}}|?Attack 4 Cooldown|link=none}} * {{#var:cooldownFactor}} }} }}
Line 235: Line 235:
 
-->{{#vardefine:bestCategoryPercentage| {{#ifeq: {{#var:numMidAttacks}} | 0 | 1 | 0.75 }} }}<!--
 
-->{{#vardefine:bestCategoryPercentage| {{#ifeq: {{#var:numMidAttacks}} | 0 | 1 | 0.75 }} }}<!--
 
Define selection chances from category and number of attacks in category so we don't have to calc them twice and so they can be called.
 
Define selection chances from category and number of attacks in category so we don't have to calc them twice and so they can be called.
-->{{#if: {{#var:attack1Type                }} | {{#vardefine:attack1SelectionChance | {{#expr: {{#switch: {{#var:attack1SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack1Type                }} | {{#vardefine:attack1SelectionChance | {{#expr: {{#switch: {{#var:attack1SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack2Type                }} | {{#vardefine:attack2SelectionChance | {{#expr: {{#switch: {{#var:attack2SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack2Type                }} | {{#vardefine:attack2SelectionChance | {{#expr: {{#switch: {{#var:attack2SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack3Type                }} | {{#vardefine:attack3SelectionChance | {{#expr: {{#switch: {{#var:attack3SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack3Type                }} | {{#vardefine:attack3SelectionChance | {{#expr: {{#switch: {{#var:attack3SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack4Type                }} | {{#vardefine:attack4SelectionChance | {{#expr: {{#switch: {{#var:attack4SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }} }} }} }} }}<!--
+
-->{{#if: {{#var:attack4Type                }} | {{#vardefine:attack4SelectionChance | {{#expr: {{#switch: {{#var:attack4SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }} }} }} }} }}<!--
-->{{#if: {{#var:attack5Type  | {{#var: 5}} }} | {{#vardefine:attack5SelectionChance | {{#expr: {{#switch: {{#var:attack5SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack5Type  | {{#var: 5}} }} | {{#vardefine:attack5SelectionChance | {{#expr: {{#switch: {{#var:attack5SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack6Type  | {{#var: 6}} }} | {{#vardefine:attack6SelectionChance | {{#expr: {{#switch: {{#var:attack6SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack6Type  | {{#var: 6}} }} | {{#vardefine:attack6SelectionChance | {{#expr: {{#switch: {{#var:attack6SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack7Type  | {{#var: 7}} }} | {{#vardefine:attack7SelectionChance | {{#expr: {{#switch: {{#var:attack7SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack7Type  | {{#var: 7}} }} | {{#vardefine:attack7SelectionChance | {{#expr: {{#switch: {{#var:attack7SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack8Type  | {{#var: 8}} }} | {{#vardefine:attack8SelectionChance | {{#expr: {{#switch: {{#var:attack8SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack8Type  | {{#var: 8}} }} | {{#vardefine:attack8SelectionChance | {{#expr: {{#switch: {{#var:attack8SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack9Type  | {{#var: 9}} }} | {{#vardefine:attack9SelectionChance | {{#expr: {{#switch: {{#var:attack9SelectionCategory }} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack9Type  | {{#var: 9}} }} | {{#vardefine:attack9SelectionChance | {{#expr: {{#switch: {{#var:attack9SelectionCategory }} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack10Type | {{#var:10}} }} | {{#vardefine:attack10SelectionChance| {{#expr: {{#switch: {{#var:attack10SelectionCategory}} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack10Type | {{#var:10}} }} | {{#vardefine:attack10SelectionChance| {{#expr: {{#switch: {{#var:attack10SelectionCategory}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack11Type              }} | {{#vardefine:attack11SelectionChance| {{#expr: {{#switch: {{#var:attack11SelectionCategory}} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }}<!--
+
-->{{#if: {{#var:attack11Type              }} | {{#vardefine:attack11SelectionChance| {{#expr: {{#switch: {{#var:attack11SelectionCategory}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }}<!--
-->{{#if: {{#var:attack12Type              }} | {{#vardefine:attack12SelectionChance| {{#expr: {{#switch: {{#var:attack12SelectionCategory}} | mid = 0.25 / {{#var:numMidAttacks}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | 0 }} }} }} }} }} }} }} }} }} }} }}<!--
+
-->{{#if: {{#var:attack12Type              }} | {{#vardefine:attack12SelectionChance| {{#expr: {{#switch: {{#var:attack12SelectionCategory}} | best = {{#var:bestCategoryPercentage}} / {{#var:numBestAttacks}} | mid = 0.25 / {{#var:numMidAttacks}} | 0 }} }} }} }} }} }} }} }} }} }} }}<!--
  
 
2.5 Calculate actual DPS  
 
2.5 Calculate actual DPS  

Please note that all contributions to RimWorld Wiki are considered to be released under the CC BY-SA 3.0 (see RimWorld Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)