Difference between revisions of "Template:Weapon DPS Chart"
Line 1: | Line 1: | ||
− | <includeonly>{{#vardefine: name | {{{1|{{PAGENAME}} }}} }} {{#if: {{{2|}}} | | + | <includeonly>{{#vardefine: name | {{{1|{{PAGENAME}} }}} }} {{#vardefine: range | {{Q|{{#var: name}}|Range}}}} {{#if: {{{2|}}} | |
{{#ifeq: {{{2|}}} | Awful | | {{#ifeq: {{{2|}}} | Awful | | ||
{{#vardefine: TouchAccuracy | {{#ifexpr: {{ #expr: 0.8*{{Q|{{#var: name}}| Accuracy (Touch) Base}} round 2}} > 100 | 1 | {{ #expr: 0.8*{{Q|{{#var: name}}| Accuracy (Touch) Base}}/100}}}}}} | {{#vardefine: TouchAccuracy | {{#ifexpr: {{ #expr: 0.8*{{Q|{{#var: name}}| Accuracy (Touch) Base}} round 2}} > 100 | 1 | {{ #expr: 0.8*{{Q|{{#var: name}}| Accuracy (Touch) Base}}/100}}}}}} | ||
Line 63: | Line 63: | ||
{{#vardefine: DPS | {{Q|{{#var: name}}|Maximum DPS}} }} | {{#vardefine: DPS | {{Q|{{#var: name}}|Maximum DPS}} }} | ||
}} | }} | ||
+ | |||
+ | {{#vardefine: XAxisString | 1 }} | ||
+ | {{#vardefine: YAxisString | {{#expr: {{#var: TouchAccuracy}} * {{#var: DPS}} }} }} | ||
+ | |||
+ | {{#ifexpr: {{#var:range}} > 2| | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, 3}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: {{#var: TouchAccuracy}} * {{#var: DPS}} }}}} | ||
+ | |||
+ | {{#ifexpr: {{#var:range}} > 11| | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, 12}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: {{#var: ShortAccuracy}} * {{#var: DPS}} }}}} | ||
+ | |||
+ | {{#ifexpr: {{#var:range}} > 24| | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, 25}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: {{#var: MediumAccuracy}} * {{#var: DPS}}}}}} | ||
+ | |||
+ | {{#ifexpr: {{#var:range}} > 39| | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, 40}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: {{#var: LongAccuracy}} * {{#var: DPS}} }}}} | ||
+ | |||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, {{#var:range}}}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: {{#var: LongAccuracy}} * {{#var: DPS}} }}}} | ||
+ | |||
+ | | | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, {{#var:range}}}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: ((({{#var:range}} - 25) / (40-25)) * {{#var: MediumAccuracy}} + (1-({{#var:range}} - 25) / (40-25)) * {{#var: LongAccuracy}}) * {{#var: DPS}} }}}} | ||
+ | }} | ||
+ | | | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, {{#var:range}}}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: ((({{#var:range}} - 12) / (25-12)) * {{#var: ShortAccuracy}} + (1-({{#var:range}} - 12) / (25-12)) * {{#var: MediumAccuracy}}) * {{#var: DPS}} }}}} | ||
+ | }} | ||
+ | | | ||
+ | {{#vardefine: XAxisString | {{#var: XAxisString}}, {{#var:range}}}} | ||
+ | {{#vardefine: YAxisString | {{#var: YAxisString}}, {{#expr: ((({{#var:range}} - 3) / (12-3)) * {{#var: TouchAccuracy}} + (1-({{#var:range}} - 3) / (12-3)) * {{#var: ShortAccuracy}}) * {{#var: DPS}} }}}} | ||
+ | }} | ||
+ | |}} | ||
+ | |||
{{GraphChart|width=400 | {{GraphChart|width=400 | ||
− | |||
|height=200 | |height=200 | ||
+ | |type=area | ||
|xAxisTitle=Range (Cells) | |xAxisTitle=Range (Cells) | ||
|xAxisMin = 0 | |xAxisMin = 0 | ||
Line 71: | Line 108: | ||
|yAxisMin = 1 | |yAxisMin = 1 | ||
|yAxisMax = 30 | |yAxisMax = 30 | ||
− | |yAxisTitle=DPS | + | |yAxisTitle=DPS |
|x= 1, 3, 12, 25, 40, 46 | |x= 1, 3, 12, 25, 40, 46 | ||
− | | | + | |y1= {{#expr: {{#var: TouchAccuracy}} * {{#var: DPS}} }}, {{#expr: {{#var: TouchAccuracy}} * {{#var: DPS}} }}, {{#expr: {{#var: ShortAccuracy}} * {{#var: DPS}} }}, {{#expr: {{#var: MediumAccuracy}} * {{#var: DPS}} }}, {{#expr: {{#var: LongAccuracy}} * {{#var: DPS}} }} |
}}</includeonly> | }}</includeonly> | ||
<noinclude> | <noinclude> | ||
{{Documentation}} | {{Documentation}} | ||
</noinclude> | </noinclude> |
Revision as of 02:10, 27 January 2021
Creates a graph showing the optimum DPS that a ranged weapon is capable of at each range, assuming perfect Pawn accuracy. The dimensions and display are standardized to offer ease of comparison.
Usage
Without parameters, the template will display the chart for the current PAGENAME, assuming normal quality. For example, if the following was used on the assault rifle page:
{{Weapon DPS Chart}}
it would produce:
The first parameter, if present, allows the weapon to be chosen if it is not used on the page of the weapon in question. The template will display the chart for the chosen weapon, assuming normal quality. For example, if the following was used on any page:
{{Weapon DPS Chart|Sniper rifle}}
it would produce:
The second parameter, if present, allows the quality of the weapon to be chosen. It can be used with or without first parameter. The template will display the chart for the chosen weapon and quality. For example, if the following was used on the minigun page
{{Weapon DPS Chart||Legendary}}
it would produce:
The above documentation is transcluded from Template:Weapon DPS Chart/doc. (edit | history) Editors can experiment in this template's sandbox (create | mirror) and testcases (create) pages. Please add categories to the /doc subpage. Subpages of this template. |