Difference between revisions of "Template:Infobox main/testing"

From RimWorld Wiki
Jump to navigation Jump to search
(First, very rough pass)
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
<includeonly>{{#vardefine:Name|{{{name|{{BASEPAGENAME}}}}}}} <div class="infobox float:right; {{#if:{{{1|}}}|{{#switch:{{{1}}}|<!--
+
<includeonly>{{#switch: {{lc:{{{set property|}}} }}
--> animal = c_08 |<!--
+
| 1 | yes | y | t | true = {{#vardefine:setProperty | true }}
--> plant = c_14 |<!--
+
| 0 | no | n | f | false = {{#vardefine:setProperty |}}
--> weapon = c_06 |<!--
+
| #default = {{#vardefine:setProperty | {{#ifeq: {{NAMESPACE}} || true }} }}
--> area = c_11 |<!--
+
}}<div class="infobox float:right; {{#if: {{{1|}}} | {{#switch: {{{1}}}
--> structure = c_02 |<!--
+
  | furniture | medicine = c_01
--> production = c_25 |<!--
+
  | structure = c_02
--> security = c_10 |<!--
+
  | resource = c_03
--> furniture = c_01 |<!--
+
  | weapon = c_06
-->}}}}">
+
  | animal | food = c_08
<p class="heading">{{#var:Name}}</p>
+
  | fabric = c_09s
 +
  | security = c_10
 +
  | area | exotic = c_11
 +
  | metallic | stony = c_12
 +
  | plant = c_14
 +
  | leathery = c_22
 +
  | drug = c_24
 +
  | production = c_25
 +
}} }}">
 +
<p class="heading">{{#vardefine:Name|{{{name|{{BASEPAGENAME}}}}} }} {{#var:Name}} {{#if: {{#var:setProperty}} | {{#set:Name = {{#var:Name}} }} }}</p>
 
<div class="wrapper">
 
<div class="wrapper">
<div class="image_wrapper" title="{{#var:Name}}">[[File:{{{image|{{#var:Name}}}}}|{{{imagesize|250px}}}|link={{#var:Name}}|{{#var:Name}}]]</div>
+
<div class="image_wrapper" title="{{#var:Name}}">[[File:{{{image|{{#var:Name}} }}}|{{{imagesize|250px}}}|link = {{#var:Name}}|{{#var:Name}}]]{{#if: {{#var:setProperty}} | {{#set:Image = [[File:{{{image|{{#var:Name}}.png}}}]]}} }}</div>
<p class="text-center" style="display:block; font-size:89%; padding: .5em;">{{#if:{{{description|}}}|{{{description|}}}{{#set:Description = {{{description|}}}}}}}</p>{{#set:Image = [[File:{{{image|{{#var:Name}}.png}}}]]}}
+
<p class="text-center" style="display:block; font-size:89%; padding: .5em;">{{#if:{{{description|}}}|{{{description|}}}{{#if: {{#var:setProperty}} | {{#set:Description = {{{description|}}} }} }} }}</p>
----
+
 
 +
<!-- BASE STATS -->
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important'>Base Stats</p>
 
<dl>
 
<dl>
{{#set:Name = {{#var:Name}} }}
+
 
 +
<!-- Category -->
 
;Type
 
;Type
:[[{{{type}}}]]{{#set:Type = {{{type|}}}}}{{#if: {{{type2|}}} |&#32;&ndash;&#32; [[{{{type2}}}]]{{#set:Type2 = {{{type2|}}}}} }}
+
:[[{{{type}}}]]{{#if: {{#var:setProperty}} | {{#set:Type = {{{type|}}} }} }}{{#if: {{{type2|}}} |&#32;&ndash;&#32; {{#ifeq:{{{type2|}}}|Medicine|[[Medicine (disambiguation)|Medicine]]|[[{{{type2}}}]]}}{{#if: {{#var:setProperty}} | {{#set:Type2 = {{{type2|}}}}} }} }}
 +
 
 +
{{#if: {{{stuff category|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Stuff Category = {{{stuff category|}}} }} }}
 +
;Stuff Category
 +
:{{{stuff category|}}}
 +
}}
 +
 
 +
{{#if: {{{tech level|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Tech Level = {{{tech level|}}} }} }}
 +
;Tech Level
 +
:[[Tech levels|{{{tech level|}}}]]
 +
}}
 +
 
 +
{{#if: {{{class|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Class = {{{class|}}} Weapons}} }}
 +
;Class
 +
:[[{{{class|}}} Weapons|{{{class|}}}]]
 +
}}
  
{{#if: {{{placeable|}}}|{{#set:Placeable = {{{placeable|}}} }}
+
<!-- If market value defined, use that, else, if possible, calculate the value and use that instead but make a note that it is calculated.-->
;Placeable
+
{{#if: {{{marketvalue|}}} |
:{{{placeable|}}}}}
+
  {{#if: {{#var:setProperty}} | {{#set: Market Value Base = {{{marketvalue|}}} }} }}
 +
;Market Value
 +
:{{Market Value | {{{marketvalue|}}} }}&nbsp;{{Icon Small|silver}}
 +
| {{#if: {{{resource 1|}}}| {{#if: {{{work to make|}}} | {{#ifeq: {{{resource 1|}}} | Stuff | | {{#ifeq: {{{resource 1|}}} | Nutrition | |
 +
  {{#if: {{#var:setProperty}} | {{#set: Market Value Base = {{Market Value Calculator}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Calculated Market Value = True }} }}
 +
;Market Value
 +
:{{Market Value | {{Market Value Calculator}} }}&nbsp;{{Icon Small|silver}} {{Hover title|link=no|This value is automatically calculated by the wiki and may not be correct|<sup>[Note]</sup>}} }} }} }}
 +
}}
 +
}}
 +
 
 +
{{#if: {{{stack limit|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Stack Limit = {{{stack limit|}}} }} }}
 +
;Stack Limit
 +
:{{{stack limit|}}}
 +
}}
 +
 
 +
{{#if: {{{mass base|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Mass Base = {{{mass base|}}} }} }}
 +
;Mass
 +
:{{{mass base|}}} kg
 +
}}
 +
 
 +
{{#if: {{{beauty|}}}{{{beauty outdoors|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Beauty Base = {{{beauty|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Beauty Outdoors Base = {{{beauty uutdoors|}}} }} }}
 +
;Beauty
 +
:{{{beauty|0}}} {{#if:{{{beauty outdoors|}}}|<abbr title="Beauty score when outdoors">({{{beauty outdoors|}}})</abbr> }}
 +
}}
 +
 
 +
{{#if: {{{styledominance|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Style Dominance = {{{styledominance|}}} }} }}
 +
  {{#if: {{{style|}}} |
 +
    {{#if: {{#var:setProperty}} | {{#set:Style = {{{style|}}} }} }}
 +
  }}
 +
;Style Dominance
 +
:{{{style|}}} {{{styledominance|}}}
 +
}}
 +
 
 +
<!-- Durability -->
 +
{{#if: {{{hp|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Max Hit Points Base = {{{hp|}}} }} }}
 +
;HP
 +
:{{{hp|}}}
 +
}}
 +
 
 +
{{#if: {{{deterioration|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Deterioration Rate Base = {{{deterioration|}}} }} }}
 +
;Deterioration Rate
 +
:{{{deterioration|}}}
 +
}}
 +
 
 +
{{#if: {{{flammability|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Flammability Base = {{{flammability|}}} }} }}
 +
;Flammability
 +
:{{%| {{{flammability|}}} }}
 +
}}
 +
 
 +
{{#if: {{{days to rot|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Days To Start Rot Base = {{{days to rot|}}}}} }}
 +
;Days To Start Rot
 +
:{{{days to rot|}}}
 +
}}
 +
 
 +
{{#if: {{{min safe temperature|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Min Safe Temperature = {{{min safe temperature|}}} }} }}
 +
;Min Safe Temperature
 +
:{{Temperature| {{{min safe temperature|}}} }}
 +
}}
 +
 
 +
{{#if: {{{max safe temperature|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Max Safe Temperature = {{{max safe temperature|}}} }} }}
 +
;Max Safe Temperature
 +
:{{Temperature| {{{max safe temperature|}}} }}
 +
}}
 +
 
 +
{{#if: {{{spoiling rate per degree per tick|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Spoiling Rate = {{{spoiling rate per degree per tick|}}} }} }}
 +
;<abbr title="per °C outside the safe temperature per tick">Spoiling Rate</abbr>
 +
:{{%| {{{spoiling rate per degree per tick|}}} }}
 +
}}
 +
 
 +
<!-- Other -->
 +
{{#if: {{{edifice|}}}
 +
  | {{#if: {{#var:setProperty}} | {{#set:Edifice = {{{edifice|}}} }} }}
 +
;Edifice
 +
:{{{edifice|}}}
 +
}}
  
{{#if: {{{rotatable|}}}|{{#set:Rotatable = {{{rotatable|}}} }}
+
{{#if: {{{rotatable|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Rotatable = {{{rotatable|}}} }} }}
 
;Rotatable
 
;Rotatable
:{{{rotatable|}}}}}
+
:{{ucfirst:{{{rotatable|}}} }}
 +
}}
 +
 
 +
{{#if: {{{path cost|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Path Cost = {{{path cost|}}} }} }}
 +
;Path Cost
 +
:{{{path cost|}}}
 +
}}
 +
 
  
{{#if: {{{size|}}}|{{#set:Size = {{{size|}}} }}
+
<!-- BUILDING -->
 +
{{#if: {{{size|}}} {{{minifiable|}}} {{{placeable|}}} {{{passability|}}} {{{cover|}}} {{{blockswind|}}} {{{terrain affordance|}}} {{{power|}}} {{{cleanliness|}}} {{{facility|}}} {{{glowcolor|}}} {{{glowradius|}}} {{{heatpersecond|}}} {{{maxheattemperature|}}} {{{mincooltemperature|}}} {{{surgery success chance factor|}}} {{{immunity gain speed factor|}}} {{{rest effectiveness|}}} {{{comfort|}}} {{{comfort offset|}}} {{{recreation power|}}} {{{recreation type|}}} {{{work efficiency factor|}}} {{{work speed offset|}}} {{{max simultaneous facilities|}}} {{{unpowered work speed factor|}}} {{{efficiency|}}} {{{speed|}}} |
 +
</dl>{{clear}}
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>Building</p>
 +
<dl>
 +
}}
 +
 
 +
{{#if: {{{size|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Size = {{{size|}}} }} }}
 
;Size
 
;Size
:{{{size|}}}}}
+
:{{{size|}}}
 +
}}
 +
 
 +
{{#if: {{{minifiable|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Minifiable = {{{minifiable|}}} }} }}
 +
;Minifiable
 +
:{{ucfirst:{{{minifiable|}}} }}
 +
}}
 +
 
 +
{{#if: {{{placeable|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Placeable = {{{placeable|}}} }} }}
 +
;Placeable
 +
:{{ucfirst:{{{placeable|}}} }}
 +
}}
 +
 
 +
{{#if: {{{passability|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Passability = {{{passability|}}} }} }}
 +
;Passability
 +
:{{{passability|}}}
 +
}}
 +
 
 +
{{#if: {{{cover|}}} | {{#ifexpr: {{{cover|}}} > 0.75 |
 +
  {{#if: {{#var:setProperty}} | {{#set:Cover Effectiveness = 0.75}} }}
 +
;Cover Effectiveness
 +
:75%
 +
| {{#if: {{#var:setProperty}} | {{#set:Cover Effectiveness= {{{cover|}}} }} }}
 +
;Cover Effectiveness
 +
:{{%| {{{cover|}}} }}
 +
}} }}
 +
 
 +
{{#if: {{{blockswind|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Blocks Wind = {{{blockswind|}}} }} }}
 +
;Blocks Wind
 +
:{{ucfirst:{{{blockswind|}}} }}
 +
}}
 +
 
 +
{{#if: {{{terrain affordance|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Terrain Affordance = {{{terrain affordance|}}} }} }}
 +
;Terrain Affordance
 +
:{{ucfirst:{{{terrain affordance|}}} }}
 +
}}
 +
 
 +
{{#if: {{{power|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Power Consumption = {{{power|}}} }} }}
 +
;Power
 +
:{{{power|}}} W
 +
}}
 +
 
 +
{{#if: {{{cleanliness|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Cleanliness = {{{cleanliness|}}} }} }}
 +
;Cleanliness
 +
:{{{cleanliness|}}}
 +
}}
 +
 
 +
{{#if: {{{facility|}}} |
 +
  {{#vardefine:Facility1 | {{ucfirst:{{#explode:{{{facility|}}}|,|0}} }} }}
 +
  {{#vardefine:Facility2 | {{ucfirst:{{#explode:{{{facility|}}}|,|1}} }} }}
 +
  {{#vardefine:Facility3 | {{ucfirst:{{#explode:{{{facility|}}}|,|2}} }} }}
 +
  {{#vardefine:Facility4 | {{ucfirst:{{#explode:{{{facility|}}}|,|3}} }} }}
 +
  {{#vardefine:Facility5 | {{ucfirst:{{#explode:{{{facility|}}}|,|4}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Facility = {{#var:Facility1}} | Facility = {{#var:Facility2}} | Facility = {{#var:Facility3}} | Facility = {{#var:Facility4}} | Facility = {{#var:Facility5}} }} }}
 +
;Facility
 +
:[[{{#var:Facility1}}]]{{#if: {{#var:Facility2}} |, [[{{#var:Facility2}}]]}}{{#if: {{#var:Facility3}} |, [[{{#var:Facility3}}]]}}{{#if: {{#var:Facility4}} |, [[{{#var:Facility4}}]]}}{{#if: {{#var:Facility5}} |, [[{{#var:Facility5}}]]}}
 +
}}
 +
 
 +
<!-- Building - Furniture -->
 +
{{#if: {{{glowcolor|}}} |
 +
  {{#vardefine:Red  | {{#replace:{{#explode:{{{glowcolor|}}}|,|0}}|(}} }}
 +
  {{#vardefine:Green| {{#explode:{{{glowcolor|}}}|,|1}} }}
 +
  {{#vardefine:Blue | {{#replace:{{#explode:{{{glowcolor|}}}|,|2}}|)}} }}
 +
  {{#vardefine:LightRadius|{{Lit Radius|{{{glowradius|}}}|{{#expr:{{#var:Red}}+{{#var:Green}}+{{#var:Blue}} }} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Light Radius = {{#var:LightRadius}} }} }}
 +
;<abbr title="The furthest away a tile can be before it falls below 30% light">Light Radius</abbr>
 +
:{{#expr:{{#var:LightRadius}} round 2}}
 +
}}
 +
 
 +
{{#if: {{{heatpersecond|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Heat Per Second = {{{heatpersecond|}}} }} }}
 +
;Heat Per Second
 +
:{{{heatpersecond|}}}
 +
}}
 +
 
 +
{{#if: {{{maxheattemperature|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Max Heat Temperature = {{{maxheattemperature|}}} }} }}
 +
;Stops Heating At
 +
:{{Temperature| {{{maxheattemperature}}} }}
 +
}}
 +
 
 +
{{#if: {{{mincooltemperature|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Min Cool Temperature = {{{mincooltemperature|}}} }} }}
 +
;Stops Cooling At
 +
:{{Temperature| {{{mincooltemperature}}} }}
 +
}}
  
{{#if: {{{efficiency|}}}|{{#set:Efficiency= {{{efficiency|}}} }}
+
{{#if: {{{surgery success chance factor|}}} |
;Efficiency
+
  {{#if: {{#var:setProperty}} | {{#set:Surgery Success Chance Factor = {{{surgery success chance factor|}}} }} }}
:{{{efficiency|}}}}}
+
;Surgery Success Chance Factor
 +
:{{{surgery success chance factor|}}}
 +
}}
 +
 
 +
{{#if: {{{immunity gain speed factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Immunity Gain Speed Factor = {{{immunity gain speed factor|}}} }} }}
 +
;Immunity Gain Speed Factor
 +
:{{{immunity gain speed factor|}}}
 +
}}
 +
 
 +
{{#if: {{{rest effectiveness|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Rest Effectiveness = {{{rest effectiveness|}}} }} }}
 +
;Rest Effectiveness
 +
:{{{rest effectiveness|}}}
 +
}}
 +
 
 +
{{#if: {{{comfort|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Comfort Base = {{{comfort|}}} }} }}
 +
;Comfort
 +
:{{{comfort|}}}
 +
}}
 +
 
 +
{{#if: {{{comfort offset|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Comfort Offset = {{{comfort offset|}}} }} }}
 +
;Comfort Offset
 +
:{{{comfort offset|}}}
 +
}}
 +
 
 +
<!-- Building - Recreation -->
 +
{{#if: {{{recreation power|}}} {{{recreation type|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Recreation Power = {{{recreation power|}}} | Recreation Type = {{{recreation type|}}} }} }}
 +
;Recreation
 +
:{{#if: {{{recreation power|}}} | {{%| {{{recreation power|}}} }} }} {{{recreation type|}}}
 +
}}
 +
 
 +
<!-- Building - Production -->
 +
{{#if: {{{work efficiency factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Work Efficiency Factor = {{{work efficiency factor|}}}}} }}
 +
;Work Efficiency Factor
 +
:{{%| {{{work efficiency factor|}}} }}
 +
}}
  
{{#if: {{{hp|}}}|{{#set:Max Hit Points Base = {{{hp|}}} }}
+
{{#if: {{{unpowered work speed factor|}}} | <!-- work speed at an unpowered workstation -->
;HP
+
  {{#if: {{#var:setProperty}} | {{#set: Unpowered Work Speed Factor = {{{unpowered work speed factor|}}}}} }}
:{{{hp|}}}}}
+
;Unpowered Work Speed Factor
 +
:{{%| {{{unpowered work speed factor|}}} }}
 +
}}
  
{{#if: {{{deterioration|}}}|{{#set:Deterioration Rate Base = {{{deterioration|}}} }}
+
<!-- Building - Misc -->
;Deterioration Rate
+
{{#if: {{{work speed offset|}}} |
:{{{deterioration|}}}}}
+
  {{#if: {{#var:setProperty}} | {{#set: Work Speed Offset = {{{work speed offset|}}} }} }}
 +
;Work Speed Offset
 +
:{{{work speed offset|}}}
 +
}}
  
<!-- If market value defined, use that, else, if possible, calculate the value and use that instead but make a note that it is calculated.-->
+
{{#if: {{{max simultaneous facilities|}}} | <!-- how many of these facilities a work table can be connected to -->
{{#if: {{{marketvalue|}}}|{{#set: Market Value Base = {{{marketvalue|}}} }}
+
  {{#if: {{#var:setProperty}} | {{#set: Max Simultaneous Facilities = {{{max simultaneous facilities|}}}}} }}
;Market Value
+
;Max Simultaneous Facilities
:{{Market Value | {{{marketvalue|}}}}}&nbsp;{{Icon Small|silver}} | {{#if: {{{resource 1|}}}| {{#if: {{{work to make|}}} | {{#ifeq: {{{resource 1|}}} | Stuff | | {{#set: Market Value Base = {{Market Value Calculator}} }} {{#set: Calculated Market Value  = True }}
+
:{{{max simultaneous facilities|}}}
;Market Value
 
:{{Market Value | {{Market Value Calculator}}}}&nbsp;{{Icon Small|silver}}  {{H:title|link=no|This value is automatically calculated by the wiki and may not be correct|<sup>[Note]</sup>}} }} }} }}
 
 
}}
 
}}
  
{{#if: {{{beauty|}}}|{{#set:Beauty Base = {{{beauty|}}} }}
+
{{#if: {{{efficiency|}}} | <!-- efficiency of a battery -->
;Beauty
+
  {{#if: {{#var:setProperty}} | {{#set:Efficiency = {{{efficiency|}}} }} }}
:[[Beauty Base::{{{beauty|}}}]]}}
+
;Efficiency
 +
:{{%| {{{efficiency|}}} }}
 +
}}
  
{{#if: {{{mass base|}}}|{{#set:Mass Base = {{{mass base|}}} }}
+
<!-- Building - Floors -->
;Mass
+
{{#if: {{{speed|}}} |
:{{{mass base|}}} kg}}
+
  {{#if: {{#var:setProperty}} | {{#set:Move Speed Factor = {{{speed|}}} }} }}
 +
;Move Speed Factor
 +
:{{%| {{{speed|}}} }}
 +
}}
  
{{#if: {{{flammability|}}}|{{#set:Flammability Base = {{{flammability|}}} }}
 
;Flammability
 
:{{#expr:{{{flammability|}}}*100}}%}}
 
  
{{#if: {{{insulationcold|}}} {{{insulationheat|}}} {{{insulationcoldfactor|}}} {{{insulationheatfactor|}}} {{{armorsharp|}}} {{{armorblunt|}}} {{{armorheat|}}} {{{armorsharpfactor|}}} {{{armorbluntfactor|}}} {{{armorheatfactor|}}} {{{painshockthreshold|}}} {{{coverage|}}} {{{layer|}}}|
+
<!-- APPAREL -->
 +
{{#if: {{{insulationcold|}}} {{{insulationheat|}}} {{{insulationcoldfactor|}}} {{{insulationheatfactor|}}} {{{armorsharp|}}} {{{armorblunt|}}} {{{armorheat|}}} {{{armorsharpfactor|}}} {{{armorbluntfactor|}}} {{{armorheatfactor|}}} {{{painshockthreshold|}}} {{{coverage|}}} {{{layer|}}} |
 
</dl>{{clear}}
 
</dl>{{clear}}
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Apparel'''</p>
+
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>Apparel</p>
 
<dl>
 
<dl>
 
}}
 
}}
  
{{#if: {{{insulationcold|}}}|{{#set:Insulation - Cold Base= {{{insulationcold|}}} }}
+
{{#if: {{{insulationcold|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Insulation - Cold Base= {{{insulationcold|}}} }} }}
 
;Insulation - Cold
 
;Insulation - Cold
:{{{insulationcold|}}}&deg;C}}
+
:{{Temperature| {{{insulationcold|}}} || delta}}
 +
}}
  
{{#if: {{{insulationheat|}}}|{{#set:Insulation - Heat Base= {{{insulationheat|}}} }}
+
{{#if: {{{insulationheat|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Insulation - Heat Base= {{{insulationheat|}}} }} }}
 
;Insulation - Heat
 
;Insulation - Heat
:{{{insulationheat|}}}&deg;C}}
+
:{{Temperature| {{{insulationheat|}}} || delta}}
 +
}}
  
{{#if: {{{insulationcoldfactor|}}}|{{#set:Insulation Factor - Cold= {{{insulationcoldfactor|}}} }}
+
{{#if: {{{insulationcoldfactor|}}} |
;{{H:title|link=no|See Apparel for how this is applied|Insulation Factor - Cold}}
+
  {{#if: {{#var:setProperty}} | {{#set:Insulation Factor - Cold= {{{insulationcoldfactor|}}} }} }}
:{{{insulationcoldfactor|}}}x }}
+
;<abbr title="See Apparel for how this is applied">Insulation Factor - Cold</abbr>
 +
:{{{insulationcoldfactor|}}}×
 +
}}
  
{{#if: {{{insulationheatfactor|}}}|{{#set:Insulation Factor - Heat= {{{insulationheatfactor|}}} }}
+
{{#if: {{{insulationheatfactor|}}} |
;{{H:title|link=no|See Apparel for how this is applied|Insulation Factor - Heat}}
+
  {{#if: {{#var:setProperty}} | {{#set:Insulation Factor - Heat= {{{insulationheatfactor|}}} }} }}
:{{{insulationheatfactor|}}}x }}
+
;<abbr title="See Apparel for how this is applied">Insulation Factor - Heat</abbr>
 +
:{{{insulationheatfactor|}}}×
 +
}}
  
{{#if: {{{armorsharp|}}}|{{#set:Armor - Sharp = {{{armorsharp|}}} }}
+
{{#if: {{{armorsharp|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Armor - Sharp = {{{armorsharp|}}} }} }}
 
;Armor - Sharp
 
;Armor - Sharp
:{{{armorsharp|}}}%}}
+
:{{{armorsharp|}}}%
 +
}}
  
{{#if: {{{armorblunt|}}}|{{#set:Armor - Blunt= {{{armorblunt|}}} }}
+
{{#if: {{{armorblunt|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Armor - Blunt= {{{armorblunt|}}} }} }}
 
;Armor - Blunt
 
;Armor - Blunt
:{{{armorblunt|}}}%}}
+
:{{{armorblunt|}}}%
 +
}}
  
{{#if: {{{armorheat|}}}|{{#set:Armor - Heat = {{{armorheat|}}} }}
+
{{#if: {{{armorheat|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Armor - Heat = {{{armorheat|}}} }} }}
 
;Armor - Heat
 
;Armor - Heat
:{{{armorheat|}}}%}}
+
:{{{armorheat|}}}%
 +
}}
  
{{#if: {{{armorsharpfactor|}}}|{{#set:Armor Factor - Sharp = {{{armorsharpfactor|}}} }}
+
{{#if: {{{armorsharpfactor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Armor Factor - Sharp = {{{armorsharpfactor|}}} }} }}
 
;Armor Factor - Sharp
 
;Armor Factor - Sharp
:{{{armorsharpfactor|}}}}}
+
:{{{armorsharpfactor|}}}
 +
}}
  
{{#if: {{{armorbluntfactor|}}}|{{#set:Armor Factor - Blunt= {{{armorbluntfactor|}}} }}
+
{{#if: {{{armorbluntfactor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Armor Factor - Blunt= {{{armorbluntfactor|}}} }} }}
 
;Armor Factor - Blunt
 
;Armor Factor - Blunt
:{{{armorbluntfactor|}}}}}
+
:{{{armorbluntfactor|}}}
 +
}}
  
{{#if: {{{armorheatfactor|}}}|{{#set:Armor Factor - Heat = {{{armorheatfactor|}}} }}
+
{{#if: {{{armorheatfactor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Armor Factor - Heat = {{{armorheatfactor|}}} }} }}
 
;Armor Factor - Heat
 
;Armor Factor - Heat
:{{{armorheatfactor|}}}}}
+
:{{{armorheatfactor|}}}
 +
}}
  
{{#if: {{{painshockthreshold|}}}|{{#set:Pain Shock Threshold = {{{painshockthreshold|}}} }}
+
{{#if: {{{painshockthreshold|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Pain Shock Threshold = {{{painshockthreshold|}}} }} }}
 
;Pain Shock Threshold
 
;Pain Shock Threshold
:{{{painshockthreshold|}}}%}}
+
:{{{painshockthreshold|}}}%
 +
}}
  
{{#if: {{{coverage|}}}|{{#set:Coverage = {{{coverage|}}} }}
+
{{#if: {{{coverage|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Coverage = {{{coverage|}}} }} }}
 
;Coverage
 
;Coverage
:{{{coverage|}}}}}
+
:{{{coverage|}}}
 +
}}
  
{{#if: {{{layer|}}}|{{#set:layer= {{{layer|}}} }}
+
{{#if: {{{layer|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:layer= {{{layer|}}} }} }}
 
;Layer
 
;Layer
:{{{layer|}}}}}
+
:{{{layer|}}}
 +
}}
  
 
<!-- All pawns (animals, humanoids, mechanoids) -->
 
<!-- All pawns (animals, humanoids, mechanoids) -->
 +
<!-- Animal Health --->
 +
{{#if: {{{movespeed|}}} {{{massyoung|}}} {{{massjuvenile|}}} {{{massadult|}}} {{{healthscale|}}} {{{bodysize|}}} {{{ridingspeed|}}} {{{hungerrate|}}} {{{diet|}}} {{{lifespan|}}} {{{manhunter|}}} {{{manhuntertame|}}} {{{trainable|}}} {{{wildness|}}} {{{petness|}}} {{{predator|}}} {{{roamMtb|}}} {{{nuzzleMtb|}}} {{{maturityage|}}} {{{juvenileage|}}}|
 +
</dl>{{clear}}
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>Pawn Stats</p>
 +
<dl>
 +
 +
{{#ifeq: {{{type|}}}|Animals|{{#if: {{#var:setProperty}} | {{#set: Type = {{{type2|}}} }} }} }}
 +
 +
{{#if: {{{bandwidth|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Bandwidth = {{{bandwidth|}}} }} }}
 +
;Bandwidth
 +
:{{{bandwidth|}}}
 +
}}
 +
 +
{{#if: {{{movespeed|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Move Speed Base = {{{movespeed|}}} }} }}
 +
;Move Speed
 +
:{{{movespeed|}}} {{CS}}
 +
}}
 +
 +
{{#if: {{{healthscale|}}} | <!-- please add a short explanation of this property here -->
 +
  {{#if: {{#var:setProperty}} | {{#set:Health Scale = {{{healthscale|}}} }} }}
 +
;Health Scale
 +
:{{{healthscale|}}}
 +
}}
  
{{#if: {{{bodysize|}}}|{{#set:Body Size = {{{bodysize|}}} }}
+
{{#if: {{{bodysize|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Body Size = {{{bodysize|}}} }} }}
 
;Body Size
 
;Body Size
 
:{{{bodysize|}}}
 
:{{{bodysize|}}}
  
{{#ifeq: {{{type|}}}|Animals|{{#set: Type = {{{type2|}}}}}}}
+
{{#ifeq: {{{type|}}} | Mechanoid |
 +
  {{#vardefine:MassAdult | {{#expr: 60 * {{{bodysize}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Mass - Adult = {{#var:MassAdult}} }} }}
 +
;Mass
 +
:{{#var:MassAdult}} kg 
  
{{#if: {{{movespeed|}}}|{{#set:Move Speed Base = {{{movespeed|}}} }}
 
;Move Speed
 
:{{{movespeed|}}}}}
 
  
{{#if: {{{massyoung|{{{massadult|}}}}}}|{{#set:Mass - Young= {{{massyoung|{{#expr:{{{massadult}}}/5}}}}} }}
+
  {{#vardefine:PackCapacity | {{#expr: {{{bodysize|}}} * 35 }} }}
;Mass - Young
+
  {{#if: {{#var:setProperty}} | {{#set:Pack Capacity = {{#var: PackCapacity}} }} }}
:{{{massyoung|{{#expr:{{{massadult}}}/5}}}}} kg}}
+
;Pack Capacity
 +
:{{#var: PackCapacity}} kg
 +
 
 +
|  
 +
  <!-- Most animal babies are 0.2 the size of the adults, but birds are 0.1 -->
 +
  {{#vardefine:BabyScale | {{{babyscale|0.2}}} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Baby Scale = {{#var:BabyScale}} }} }}
 +
 
 +
  <!-- Mass is 60*bodysize, with no exceptions -->
 +
  {{#vardefine:MassYoung | {{#expr: 60 * {{{bodysize}}} * {{#var:BabyScale}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Mass - Young = {{#var:MassYoung}} }} }}
 +
;Mass - Baby
 +
:{{#var:MassYoung}} kg
  
{{#if: {{{massjuvenile|{{{massadult|}}}}}}|{{#set:Mass - Juvenile= {{{massjuvenile|{{#expr:{{{massadult}}}/2}}}}} }}
+
  {{#vardefine:MassJuvenile | {{#expr: 60 * {{{bodysize}}} * 0.5 }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Mass - Juvenile = {{#var:MassJuvenile}} }} }}
 
;Mass - Juvenile
 
;Mass - Juvenile
:{{{massjuvenile|{{#expr:{{{massadult}}}/2}}}}} kg}}
+
:{{#var:MassJuvenile}} kg
  
{{#if: {{{massadult|}}}|{{#set:Mass - Adult= {{{massadult|}}} }}
+
  {{#vardefine:MassAdult | {{#expr: 60 * {{{bodysize}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Mass - Adult = {{#var:MassAdult}} }} }}
 
;Mass - Adult
 
;Mass - Adult
:{{{massadult|}}} kg}}
+
:{{#var:MassAdult}} kg
  
</dl>{{clear}}
+
{{#ifeq: {{lc:{{{packanimal|}}} }} | true |
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Production'''</p>
+
  {{#vardefine:PackCapacity | {{#expr: {{{bodysize|}}} * 35 }} }}
<dl>
+
  {{#if: {{#var:setProperty}} | {{#set:Pack Capacity = {{#var: PackCapacity}} }} }}
 +
;Pack Capacity
 +
:{{#var: PackCapacity}} kg
 +
}}
 +
}}
  
{{#ifeq: {{{type|}}} | Animals |
+
  {{#vardefine: CarryingCapacity | {{#expr: 75 * {{{bodysize|}}} round0}} }}
  {{#vardefine: MeatName | {{{meatname | {{#var:Name}} meat}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Carrying Capacity = {{#var: CarryingCapacity}} }} }}
   {{#vardefine: LeatherName | {{{leathername | {{#var:Name}} leather}}} }}
+
;Carrying Capacity
  {{#if: {{{is exotic species|}}}|{{#set: Is Exotic Species = true}}|{{#set: Is Exotic Species = false}}}}|
+
:{{#var: CarryingCapacity}} kg
 
}}
 
}}
  
{{#if: {{#var:LeatherName }}|
 
  {{#set: Leather Name =  {{#var:LeatherName}}}} }}
 
  
 +
}}
  
{{#if:{{#var:MeatName}}|{{#vardefine: MeatYield | {{{meatyield | {{#expr: 90 * {{{bodysize}}} round 0}}}}} }}
+
{{#if: {{{ridingspeed|}}} |
  {{#set: Meat Yield = {{#var: MeatYield}} }}
+
  {{#if: {{#var:setProperty}} | {{#set: Riding Speed = {{{ridingspeed|}}} }} }}
;Meat Yield
+
;<abbr title="Multiplier to the caravan's movement speed.">Riding Speed</abbr>
:{{#var: MeatYield}}  [[Meat|{{lc:{{#var:MeatName}}}}]]}}
+
:{{{ridingspeed|}}}
 +
}}
  
  {{#vardefine: CarryingCapacity | {{#expr: 75 * {{{bodysize|}}} round0}} }}
+
{{#if: {{#vardefineecho:FilthRate | {{{filth rate|{{#if: {{{bodysize|}}} | 1}} }}} }} | <!-- Filth rate seems to default to 1 in game if it's not set in the xml. -->
   {{#set: Carrying Capacity = {{#var: CarryingCapacity}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Animal Filth Rate = {{#var:FilthRate}} }} }}
;Carrying Capacity
+
;<abbr title="The average amount of filth produced on constructed floors per 1000 cells walked by this creature.">Filth Rate</abbr>
:{{#var: CarryingCapacity}}
+
:{{#var:FilthRate}}
 +
}}
  
  <!-- Use leatheryield when set, otherwise (incorrectly in some cases) assume 30 * bodysize -->
+
{{#if: {{{hungerrate|}}} |
   <!-- See Property:Leather_Yield for details -->
+
   {{#if: {{#var:setProperty}} | {{#set:Base Hunger Rate = {{{hungerrate|}}} | Real Hunger Rate = {{#expr: {{{hungerrate|}}} * 1.6 round 2}} }} }}
{{#if:{{#var:LeatherName}}|{{#vardefine: LeatherYield | {{{leatheryield | {{#expr: 30 * {{{bodysize}}} round 0}} }}} }}
+
;<abbr title="Nutrition lost per day.">Hunger Rate</abbr>
  {{#set: Leather Yield = {{#var: LeatherYield}} }}
+
:{{#expr: {{{hungerrate|}}} * 1.6 round2}} Nutrition/Day
;Leather Yield
+
}}
:{{#var: LeatherYield}} [[{{#var: LeatherName}}|{{lc:{{#var: LeatherName}}}}]] }}
 
  
  {{#vardefine: FilthRate | {{#expr: 1.25 * {{{bodysize|}}} * {{#if: {{{petness|}}}|{{#expr: 1 - {{{petness|}}} }}|1}} round2}} }}
+
{{#if: {{{diet|}}} |
  {{#set: Animal Filth Rate = {{#var: FilthRate}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Diet = {{{diet|}}} }} }}
;{{H:title|link=no|The average amount of filth produced on constructed floors per 1000 cells walked by this creature.|Filth Rate}}
+
;Diet
:{{#var: FilthRate}}  
+
:{{{diet|}}}
 
}}
 
}}
  
{{#if: {{{milk|}}}|{{#set: Milk Amount = {{{milk|}}} }}
+
{{#if: {{{lifespan|}}} |
;[[Milk]] Amount
+
  {{#if: {{#var:setProperty}} | {{#set:Life Expectancy = {{{lifespan|}}} }} }}
:{{{milk|}}} }}
+
;Life Expectancy
 +
:{{{lifespan|}}}
 +
}}
  
{{#if: {{{milktime|}}}|{{#set: Milking Interval Days = {{{milktime|}}} }}
+
{{#if: {{{manhunter|}}} |
{{#set: Daily Milk Average = {{#expr: {{{milk|}}}/{{{milktime|}}}round2}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Turn Manhunter Chance When Attacked = {{{manhunter|}}} }} }}
;Milking Interval
+
;<abbr title="Chance of this animal turning manhunter when attacked.">Manhunter Chance</abbr>
:{{{milktime|}}}&nbsp;days}}
+
:{{%| {{{manhunter|}}} }}
 +
}}
  
{{#if: {{{wool|}}}|
+
{{#if: {{{manhuntertame|}}} |
   {{#set: Wool Amount = {{{wool|}}}}}
+
   {{#if: {{#var:setProperty}} | {{#set:Turn Manhunter Chance When Taming = {{{manhuntertame|}}} }} }}
  {{#vardefine: WoolName | {{{woolname | {{#var:Name}} wool}}} }}
+
;<abbr title="Chance of this animal turning manhunter on a failed taming attempt.">Manhunter Chance (Taming)</abbr>
  {{#set: Wool Name = {{#var:WoolName}}}}
+
:{{%| {{{manhuntertame|}}} }}
;Wool Amount
 
:{{{wool|}}} [[{{#var: WoolName}}|{{lc:{{#var: WoolName}}}}]]
 
 
}}
 
}}
  
{{#if: {{{sheartime|}}}|{{#set: Shearing Interval Days = {{{sheartime|}}} }}
+
{{#if: {{{trainable|}}} |
{{#set: Daily Wool Average = {{#expr: {{{wool|}}}/{{{sheartime}}}round2}} }}
+
  {{#if: {{#var:setProperty}} |
;Shearing Interval
+
    {{#set:Trainable Intelligence = {{{trainable|}}} }}
:{{{sheartime|}}}&nbsp;days}}
+
    {{#switch: {{{trainable|}}}
 +
      | none =        {{#set:Can Train Guard = no  | Can Train Attack = no  | Can Train Rescue = no | Can Train Haul = no  }}
 +
      | hauling only = {{#set:Can Train Guard = no  | Can Train Attack = no  | Can Train Rescue = no | Can Train Haul = yes }}
 +
      | simple =      {{#set:Can Train Guard = yes | Can Train Attack = no  | Can Train Rescue = no | Can Train Haul = no  }}
 +
      | intermediate = {{#set:Can Train Guard = yes | Can Train Attack = yes | Can Train Rescue = no | Can Train Haul = no  }}
 +
      | advanced =    {{#set:Can Train Guard = yes | Can Train Attack = yes
 +
        | Can Train Rescue = {{#ifexpr: {{{bodysize|}}} < 0.65| no | yes}}
 +
        | Can Train Haul  = {{#ifexpr: {{{bodysize|}}} < 0.4 | no | yes}}
 +
  }} }} }}
 +
;Trainable Intelligence
 +
:{{{trainable|}}}
 +
}}
  
 +
{{#if: {{{wildness|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Wildness = {{{wildness|}}} }} }}
 +
;<abbr title="Wilder creatures are naturally more difficult to tame, train, and handle.">Wildness</abbr>
 +
:{{%| {{{wildness|}}} | 0 }}
  
 +
  {{#vardefine: MinHandlingSkill | {{#expr:
 +
    {{#ifexpr: {{{wildness|}}} < 0.2 | 0
 +
      | {{#ifexpr: {{{wildness|}}} < 0.45 | 1
 +
        | {{#ifexpr: {{{wildness|}}} < 0.55 | 4
 +
          | {{#ifexpr: {{{wildness|}}} < 0.75 | 5
 +
            | {{#ifexpr: {{{wildness|}}} < 0.8 | 7
 +
              | {{#ifexpr: {{{wildness|}}} < 0.9 | 8
 +
                | {{#ifexpr: {{{wildness|}}} < 0.97 | 9
 +
                  | 10
 +
    }} }} }} }} }} }} }} <!-- Is this really the exact formula? [[Animals#Minimum_skill]] says otherwise, but that formula must be wrong as well -->
 +
    {{#ifeq: {{#var:Name}} | Human | + 7 }}
 +
  }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Minimum Handling Skill = {{#var: MinHandlingSkill}} }} }}
 +
  {{#ifeq: {{#var: MinHandlingSkill}}|0||
 +
;<abbr title="This creature cannot be tamed, trained, or commanded by anyone with less than this skill in animals.">Minimum Handling Skill</abbr>
 +
:{{#var: MinHandlingSkill}} }}
 +
}}
  
 +
{{#if: {{{petness|}}} | {{#if: {{#var:setProperty}} | {{#set: Petness = {{{petness|}}} }} }} }}
  
 +
{{#ifeq: {{{predator|}}} | true | {{#if: {{#var:setProperty}} | {{#set:Is Predator = true}} }}|}}
  
 +
{{#if: {{{roamMtb|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Roam Mtb Days = {{{roamMtb|}}} }} }}
 +
;<abbr title="How often an animal will attempt to roam away if not in a pen.">Roam Interval</abbr>
 +
:{{{roamMtb|}}} days
 +
}}
  
 +
{{#if: {{{nuzzleMtb|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Nuzzle Mtb Hours = {{{nuzzleMtb|}}} }} }}
 +
;<abbr title="How often an animal will nuzzle friendly colonists, on average.">Nuzzle Interval</abbr>
 +
{{#ifexpr: {{{nuzzleMtb|}}} <= 24
 +
  |{{#switch: {{{nuzzleMtb|}}}
 +
    |24 = :1&nbsp;day
 +
    |1 = :1&nbsp;hour
 +
    |#default = :{{{nuzzleMtb|}}}&nbsp;hours}}
 +
  |:{{#expr: {{{nuzzleMtb|}}} / 24 round1}}&nbsp;days}}
 +
}}
  
 +
{{#if: {{{mateMtb|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Mate Mtb Hours = {{{mateMtb|}}} }} }}
 +
;{{Hover title|link=no|How often an awake, non-sterilised male will attempt to mate with a female, on average.|Mate Interval}}
 +
:{{{mateMtb|}}} hours
 +
}}
  
{{#if: {{{manhunter|}}}|{{#set:Turn Manhunter Chance When Attacked = {{{manhunter|}}} }}
+
{{#if: {{{maturityage|}}} |
;{{H:title|link=no|Chance of this animal turning manhunter when attacked.|Manhunter Chance}}
+
  {{#if: {{#var:setProperty}} | {{#set: Maturity Age = {{{maturityage|}}} }} }}
:{{#expr: {{{manhunter|}}} * 100}}%}}
+
;{{Hover title|link=no|The age at which an animal reaches adulthood.|Maturity Age}}
 +
:{{#expr:{{{maturityage|}}} round 3}} years {{#ifexpr: {{{maturityage|}}}  < 1 | ({{formatnum: {{#expr: ({{formatnum:{{{maturityage|}}} |R}}*60)round 1}} }} days)
 +
}}
  
{{#if: {{{manhuntertame|}}}|{{#set:Turn Manhunter Chance When Taming = {{{manhuntertame|}}} }}
+
{{#if: {{{juvenileage|}}} |
;{{H:title|link=no|Chance of this animal turning manhunter on a failed taming attempt.|Manhunter Chance (Taming)}}
+
  {{#if: {{#var:setProperty}} | {{#set: Juvenile Age = {{{juvenileage|}}} }} }}
:{{#expr: {{{manhuntertame|}}} * 100}}%}}
+
;{{Hover title|link=no|The age at which an animal becomes a juvenile.|Juvenile Age}}
 +
:{{#expr:{{{juvenileage|}}} round 3}} years {{#ifexpr: {{{juvenileage|}}} < 1 | ({{formatnum: {{#expr: ({{formatnum:{{{juvenileage|}}}|R}}*60)round 1}} }} days) }} }}
 +
}}
  
{{#if: {{{hungerrate|}}}|{{#set:Base Hunger Rate = {{{hungerrate|}}} }}
 
;{{H:title|link=no|Nutrition lost per day.|Hunger Rate}}
 
:{{#expr: {{{hungerrate|}}} * 1.6 round2}} }}
 
  
{{#if: {{{diet|}}}|{{#set:Diet ={{{diet|}}} }}
+
{{#if: {{{min comfortable temperature|}}} |
;Diet
+
  {{#if: {{{max comfortable temperature|}}} |
:{{{diet|}}}}}
+
    {{#if: {{#var:setProperty}} | {{#set: Min Comfortable Temperature = {{{min comfortable temperature|}}} }} }}
 +
    {{#if: {{#var:setProperty}} | {{#set: Max Comfortable Temperature = {{{max comfortable temperature|}}} }} }}
 +
;Comfortable Temp Range
 +
:{{Temperature|{{{min comfortable temperature|}}}|{{{max comfortable temperature|}}}}}
 +
}} }}
  
{{#if: {{{lifespan|}}}|{{#set:Life Expectancy = {{{lifespan|}}} }}
+
{{#if: {{{livesin_temperateforest|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Temperate Forest = true }} }} }}
;Life Expectancy
+
{{#if: {{{livesin_temperateswamp|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Temperate Swamp = true }} }} }}
:{{{lifespan|}}}}}
+
{{#if: {{{livesin_tropicalrainforest|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Tropical Rainforest = true }} }} }}
 +
{{#if: {{{livesin_tropicalswamp|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Tropical Swamp = true }} }} }}
 +
{{#if: {{{livesin_aridshrubland|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Arid Shrubland = true }} }} }}
 +
{{#if: {{{livesin_desert|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Desert = true }} }} }}
 +
{{#if: {{{livesin_extremedesert|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Extreme Desert = true }} }} }}
 +
{{#if: {{{livesin_borealforest|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Boreal Forest = true }} }} }}
 +
{{#if: {{{livesin_coldbog|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Cold Bog = true }} }} }}
 +
{{#if: {{{livesin_tundra|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Tundra = true }} }} }}
 +
{{#if: {{{livesin_icesheet|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Ice Sheet = true }} }} }}
 +
{{#if: {{{livesin_seaice|}}} | {{#if: {{#var:setProperty}} | {{#set: Lives In Sea Ice = true }} }} }}
  
{{#if: {{{trainable|}}}|{{#set:Trainable Intelligence = {{{trainable|}}} }}
+
{{#if: {{{meatyield|}}} {{{meatname|}}} {{{leathername|}}} {{{leatheryield|}}} {{{milk|}}} {{{milkname|}}} {{{milktime|}}} {{{wool|}}} {{{woolname|}}} {{{sheartime|}}} {{{eggsmin|}}} {{{eggsmax|}}} {{{eggtime|}}} {{{eggs_avg|}}} {{{eggs_unfertilized|}}} {{{gestation|}}} {{{offspring|}}} {{{avg offspring|}}} |
;Trainable Intelligence
+
</dl>{{clear}}
:{{{trainable|}}}
+
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>Production</p>
{{#switch: {{{trainable|}}}
+
<dl>
| none = {{#set: Can Train Guard = no |Can Train Attack = no |Can Train Rescue = no |Can Train Haul = no}}
 
| simple = {{#set: Can Train Guard = yes |Can Train Attack = no |Can Train Rescue = no |Can Train Haul = no}}
 
| intermediate = {{#set: Can Train Guard = yes |Can Train Attack = yes |Can Train Rescue = no |Can Train Haul = no}}
 
| advanced = {{#set: Can Train Guard = yes |Can Train Attack = yes}}{{#ifexpr: {{{bodysize|}}} >= 0.65|{{#set: Can Train Rescue = yes}}|{{#set: Can Train Rescue = no}}}}{{#ifexpr: {{{bodysize|}}} >= 0.40|{{#set: Can Train Haul = yes}}|{{#set: Can Train Haul = no}}}}
 
 
}}
 
}}
 +
 +
{{#ifeq:{{#expr:{{#ifeq:{{{type|}}}|Animals|1|0}} or {{#ifeq:{{{type|}}}|Animal|1|0}}}}|1|
 +
  {{#vardefine: MeatName | {{{meatname | {{#var:Name}} meat}}} }}
 +
  {{#vardefine: LeatherName | {{{leathername | {{#var:Name}} leather}}} }}
 +
  {{#if: {{{is exotic species|}}}|{{#if: {{#var:setProperty}} | {{#set: Is Exotic Species = true}} }}|{{#if: {{#var:setProperty}} | {{#set: Is Exotic Species = false }} }} }}|
 
}}
 
}}
  
{{#if: {{{wildness|}}}|{{#set:Wildness = {{{wildness|}}} }}
+
{{#if: {{#var:LeatherName }} | {{#if: {{#var:setProperty}} | {{#set: Leather Name = {{#var:LeatherName}} }} }} }}
;{{H:title|link=no|Wilder creatures are naturally more difficult to tame, train, and handle.|Wildness}}
+
 
:{{#expr: {{{wildness|}}} * 100 round0}}%
+
{{#if: {{{bodysize|}}} |
 +
  <!-- Uses meatyield when set, otherwise interpolates from curve applied to 140*body_size or basemeatamount*bodysize -->
 +
  <!-- See Property:Meat_Yield for details -->
 +
  {{#if:{{#var:MeatName}} |
 +
    {{#vardefine: MeatYield | {{{meatyield | {{Meat Leather Curve | {{{basemeatamount|140}}} * {{{bodysize|}}} }} }}} }}
 +
    {{#if: {{#var:setProperty}} | {{#set: Meat Yield = {{#var:MeatYield}} }} }}
 +
;Meat Yield
 +
:{{#var:MeatYield}} [[Meat|{{lc:{{#var:MeatName}} }}]]
 +
  }}
  
   {{#vardefine: MinHandlingSkill |
+
  <!-- Uses leatheryield when set, otherwise interpolates from curve applied to 40*body_size or baseleatheramount*bodysize-->
     {{#ifexpr:  
+
  <!-- See Property:Leather_Yield for details -->
      {{{wildness|}}} < .2|0
+
   {{#if: {{#var:LeatherName}}
      |{{#ifexpr: {{{wildness|}}} < .45|1
+
     | {{#ifeq: {{#vardefineecho:LeatherYield | {{{leatheryield | {{Meat Leather Curve | {{{baseleatheramount|40}}} * {{{bodysize|}}} }} }}} }}
      |{{#ifexpr: {{{wildness|}}} < .55|4
+
| 0 |
      |{{#ifexpr: {{{wildness|}}} < .75|5
+
| {{#if: {{#var:setProperty}} | {{#set: Leather Yield = {{#var: LeatherYield}} }} }}
      |{{#ifexpr: {{{wildness|}}} < .8|7
+
;Leather Yield
      |{{#ifexpr: {{{wildness|}}} < .9|8
+
:{{#var: LeatherYield}} [[{{#var: LeatherName}}|{{lc:{{#var: LeatherName}} }}]]
      |{{#ifexpr: {{{wildness|}}} < .97|9
+
}} }} }}
      |10}} }} }} }} }} }} }} }}
+
 
   {{#set:Minimum Handling Skill = {{#var: MinHandlingSkill}} }}
+
{{#if: {{{milk|}}} |
  {{#ifeq: {{#var: MinHandlingSkill}}|0||
+
  {{#if: {{#var:setProperty}} | {{#set: Milk Amount = {{{milk|}}}}} }}
;{{H:title|link=no|This creature cannot be tamed, trained, or commanded by anyone with less than this skill in animals.|Minimum Handling Skill}}
+
  {{#vardefine: MilkName | {{{milkname| Milk}}} }}
:{{#var: MinHandlingSkill}} }}  
+
   {{#if: {{#var:setProperty}} | {{#set: Milk Name = {{#var:MilkName}} }} }}
 +
;Milk Amount
 +
:{{{milk|}}} [[{{#var:MilkName}}|{{lc:{{#var:MilkName}} }}]]
 
}}
 
}}
  
{{#if: {{{petness|}}}|{{#set: Petness = {{{petness|}}} }} }}
 
  
{{#ifeq: {{{predator|}}}|true|{{#set:Is Predator = true}}|}}
+
{{#if: {{{milktime|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Milking Interval Days = {{{milktime|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Daily Milk Average = {{#expr: {{{milk|}}}/{{{milktime|}}}round2}} }} }}
 +
;Milking Interval
 +
:{{{milktime|}}}&nbsp;days
 +
}}
 +
 
 +
{{#if: {{{wool|}}}|
 +
  {{#if: {{#var:setProperty}} | {{#set: Wool Amount = {{{wool|}}} }} }}
 +
  {{#vardefine: WoolName | {{{woolname | {{#var:Name}} wool}}} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Wool Name = {{#var:WoolName}} }} }}
 +
;Wool Amount
 +
:{{{wool|}}} [[{{#var: WoolName}}|{{lc:{{#var: WoolName}}}}]]
 +
}}
  
{{#if: {{{nuzzleMtb|}}}|{{#set: Nuzzle Mtb Hours = {{{nuzzleMtb|}}} }}
+
{{#if: {{{sheartime|}}} |
;{{H:title|link=no|How often an animal will nuzzle friendly colonists, on average.|Nuzzle Interval}}
+
  {{#if: {{#var:setProperty}} | {{#set: Shearing Interval Days = {{{sheartime|}}} }} }}
{{#ifexpr: {{{nuzzleMtb|}}} <= 24
+
  {{#if: {{#var:setProperty}} | {{#set: Daily Wool Average = {{#expr: {{{wool|}}}/{{{sheartime}}}round2}} }} }}
  |{{#switch: {{{nuzzleMtb|}}}
+
;Shearing Interval
    |24 = :1&nbsp;day
+
:{{{sheartime|}}}&nbsp;days
    |1 = :1&nbsp;hour
+
}}
    |#default = :{{{nuzzleMtb|}}}&nbsp;hours}}
 
  |:{{#expr: {{{nuzzleMtb|}}} / 24 round1}}&nbsp;days}} }}
 
  
{{#if: {{{eggsmin|}}}|{{#set: Eggs Per Clutch Minimum = {{{eggsmin|}}} }}
+
{{#if: {{{eggsmin|}}} |
{{#if: {{{eggsmax|}}}|{{#set: Eggs Per Clutch Maximum = {{{eggsmax|}}} }} }}
+
  {{#if: {{{eggsmax|}}} |
 +
    {{#if: {{#var:setProperty}} | {{#set: Eggs Per Clutch Minimum = {{{eggsmin|}}} }} }}
 +
    {{#if: {{#var:setProperty}} | {{#set: Eggs Per Clutch Maximum = {{{eggsmax|}}} }} }}
 
;Eggs Per Clutch
 
;Eggs Per Clutch
:{{#show: {{#var:Name}}|?Eggs Per Clutch Minimum|link=none}} to {{#show: {{#var:Name}}|?Eggs Per Clutch Maximum|link=none}} }}
+
:{{#show: {{#var:Name}}|?Eggs Per Clutch Minimum|link=none}} to {{#show: {{#var:Name}}|?Eggs Per Clutch Maximum|link=none}}
 +
}} }}
  
{{#if: {{{eggtime|}}}|{{#set: Egg Laying Interval = {{{eggtime|}}} }}
+
{{#if: {{{eggtime|}}} |
{{#set: Eggs Per Season Average = {{#expr: {{{eggs_avg|}}}/{{{eggtime|}}}*15 round 2}} }}
+
  {{#if: {{#var:setProperty}} | {{#set: Egg Laying Interval = {{{eggtime|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Eggs Per Season Average = {{#expr: {{{eggs_avg|}}}/{{{eggtime|}}}*15 round 2}} }} }}
 
;Egg Laying Interval
 
;Egg Laying Interval
:{{{eggtime|}}}&nbsp;days}}
+
:{{{eggtime|}}}&nbsp;days
 +
}}
  
{{#if: {{{eggs_avg|}}}|{{#set: Eggs Per Clutch Average = {{{eggs_avg|}}} }} }}
+
{{#if: {{{eggs_avg|}}} | {{#if: {{#var:setProperty}} | {{#set: Eggs Per Clutch Average = {{{eggs_avg|}}} }} }} }}
  
{{#if: {{{eggs_unfertilized|}}}|{{#set: Can Lay Unfertilized Eggs = {{{eggs_unfertilized|}}} }}
+
{{#if: {{{eggs_unfertilized|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Can Lay Unfertilized Eggs = {{{eggs_unfertilized|}}} }} }}
 
;Can Lay Unfertilized Eggs
 
;Can Lay Unfertilized Eggs
:{{{eggs_unfertilized|}}} }}
+
:{{{eggs_unfertilized|}}}
 +
}}
  
{{#if: {{{gestation|}}}|{{#set: Gestation Period Days = {{{gestation|}}} }}
+
{{#if: {{{gestation|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Gestation Period Days = {{{gestation|}}} }} }}
 
;Gestation Period
 
;Gestation Period
 
{{#switch: {{{gestation|}}}
 
{{#switch: {{{gestation|}}}
| N/A = :N/A
+
  | N/A     = :N/A
| 1 = :{{{gestation|}}} day
+
  | 1       = :{{{gestation|}}} day
| #default = :{{{gestation|}}} days
+
  | #default = :{{{gestation|}}} days
}}}}
+
}} }}
  
{{#if: {{{offspring|}}}|{{#set: Offspring Per Birth = {{{offspring|}}} }}
+
{{#if: {{{offspring|}}} {{{avg offspring|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Offspring Per Birth = {{{offspring|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Average Offspring Per Birth = {{{avg offspring|}}} }} }}
 
;Offspring Per Birth
 
;Offspring Per Birth
:{{{offspring|}}} }}
+
:{{{offspring|}}} {{#if:{{{avg offspring|}}}|({{{avg offspring|}}} avg)}}
 +
}}
 +
 
 +
 
 +
<!-- Ingestion -->
 +
{{#if: {{{nutrition|}}} {{{taste|}}} {{{ingested direct thought|}}} {{{joy offset|}}} {{{joy kind|}}} {{{addictiveness|}}} {{{food poison chance|}}} {{{max num to ingest at once|}}} {{{ingestion time|}}}|
 +
</dl>{{clear}}
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Ingestion'''</p>
 +
<dl>
 +
}}
 +
 
 +
{{#if: {{{nutrition|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Nutrition = {{{nutrition|}}} }} }}
 +
;{{Hover title| link=no | Nutrition gained when this item or object is eaten | Nutrition }}
 +
:{{{nutrition}}}
 +
}}
 +
 
 +
{{#if: {{{taste|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Taste = {{{taste|}}} }} }}
 +
;Taste
 +
:{{{taste|}}}
 +
}}
 +
 
 +
{{#if: {{{ingested direct thought|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Ingested Direct Thought = {{{ingested direct thought|}}} }} }}
 +
;Ingested Direct Thought
 +
:{{{ingested direct thought|}}}
 +
}}
 +
 
 +
{{#if: {{{joy offset|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Joy Offset = {{{joy offset|}}} }} }}
 +
;Recreation Offset
 +
:{{%|{{{joy offset|}}}}}
 +
}}
 +
 
 +
{{#if: {{{joy kind|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Joy Kind = {{{joy kind|}}} }} }}
 +
;Recreation Kind
 +
:{{{joy kind|}}}
 +
}}
 +
 
 +
{{#if: {{{addictiveness|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Addictiveness = {{{addictiveness|}}} }} }}
 +
;Addictiveness
 +
:{{%| {{{addictiveness|}}} }}
 +
}}
 +
 
 +
{{#if: {{{food poison chance|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Food Poison Chance Base = {{{food poison chance|}}} }} }}
 +
;Food Poison Chance
 +
:{{%| {{{food poison chance|}}} }}
 +
}}
 +
 
 +
{{#if: {{{max num to ingest at once|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Max Num To Ingest At Once = {{{max num to ingest at once|}}} }} }}
 +
;{{Hover title| link=no | Maximum Number To Ingest At Once | Maximum To Ingest}}
 +
:{{{max num to ingest at once|}}}
 +
}}
  
{{#if: {{{maturityage|}}}|{{#set: Maturity Age = {{{maturityage|}}} }}
+
{{#if: {{{ingestion time|}}} |
;Maturity Age
+
  {{#if: {{#var:setProperty}} | {{#set:Ingestion Time= {{{ingestion time|}}} }} }}
:{{{maturityage|}}} years {{#ifexpr: {{{maturityage|}}} < 1 | ({{formatnum: {{#expr: ({{formatnum:{{{maturityage|}}}|R}}*60)round 0}} }} days) }} |}}
+
;Ingestion Time
 +
:{{ticks| {{{ingestion time|}}} }}
 +
}}
  
{{#if: {{{min comfortable temperature|}}}|{{#set: Min Comfortable Temperature = {{{min comfortable temperature|}}} }}
+
 
{{#if: {{{max comfortable temperature|}}}|{{#set: Max Comfortable Temperature = {{{max comfortable temperature|}}} }}
+
<!-- Materials -->
;Comfortable Temp Range
+
{{#if: {{{beauty factor|}}} {{{beauty offset|}}} {{{work to make factor|}}} {{{work to build factor|}}} {{{work to build offset|}}} {{{max hit points factor|}}} {{{flammability factor|}}} {{{armor - sharp factor|}}} {{{armor - blunt factor|}}} {{{armor - heat factor|}}} {{{armor - heat factor|}}} {{{insulation - cold factor|}}} {{{insulation - heat factor|}}} {{{melee blunt damage factor|}}} {{{melee sharp damage factor|}}} {{{melee cooldown factor|}}} {{{door opening speed factor|}}} {{{rest effectiveness factor|}}}|
:{{{min comfortable temperature|}}}&deg;C - {{{max comfortable temperature|}}}&deg;C}}
+
</dl>{{clear}}
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Stat Modifiers'''</p>
 +
<dl>
 +
}}
 +
 
 +
{{#if: {{{beauty factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Beauty Factor = {{{beauty factor|}}} }} }}
 +
;Beauty Factor
 +
:×{{{beauty factor|}}}
 
}}
 
}}
  
{{#if: {{{livesin_aridshrubland|}}}|{{#set: Lives in Arid Shrubland = true}} }}
+
{{#if: {{{beauty offset|}}} |
{{#if: {{{livesin_borealforest|}}}|{{#set: Lives in Boreal Forest = true}} }}
+
  {{#if: {{#var:setProperty}} | {{#set: Beauty Offset = {{{beauty offset|}}} }} }}
{{#if: {{{livesin_desert|}}}|{{#set: Lives in Desert = true}} }}
+
;Beauty Offset
{{#if: {{{livesin_extremedesert|}}}|{{#set: Lives in Extreme Desert = true}} }}
+
:+{{{beauty offset|}}}
{{#if: {{{livesin_icesheet|}}}|{{#set: Lives in Icesheet = true}} }}
+
}}
{{#if: {{{livesin_seaice|}}}|{{#set: Lives in Sea Ice = true}} }}
 
{{#if: {{{livesin_temperateforest|}}}|{{#set: Lives in Temperate Forest = true}} }}
 
{{#if: {{{livesin_tropicalrainforest|}}}|{{#set: Lives in Tropical Rainforest = true}} }}
 
{{#if: {{{livesin_tundra|}}}|{{#set: Lives in Tundra = true}} }}
 
  
 +
{{#if: {{{work to make factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Work To Make Factor = {{{work to make factor|}}} }} }}
 +
;Work To Make Factor
 +
:×{{{work to make factor|}}}
 +
}}
  
 +
{{#if: {{{work to build factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Work To Build Factor = {{{work to build factor|}}} }} }}
 +
;Work To Build Factor
 +
:×{{{work to build factor|}}}
 +
}}
  
<!--Plants-->
+
{{#if: {{{work to build offset|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Work To Build Offset = {{{work to build offset|}}} }} }}
 +
;Work To Build Offset
 +
:+{{ticks| {{{work to build offset|}}} }}
 +
}}
  
{{#if: {{{growth time|}}}|{{#set:Growth Time = {{{growth time|}}} }}
+
{{#if: {{{max hit points factor|}}} |
;Time to grow
+
  {{#if: {{#var:setProperty}} | {{#set: Max Hit Points Factor = {{{max hit points factor|}}} }} }}
:{{{growth time|}}} day(s)}}
+
;Max Hit Points
 +
:×{{{max hit points factor|}}}
 +
}}
  
{{#if: {{{yield|}}}|
+
{{#if: {{{flammability factor|}}} |
;Food Yield
+
  {{#if: {{#var:setProperty}} | {{#set: Flammability Factor = {{{flammability factor|}}} }} }}
:{{{yield|}}} [[food|food]]}}
+
;Flammability
 +
:×{{{flammability factor|}}}
 +
}}
  
{{#if: {{{wood|}}}|
+
{{#if: {{{armor - sharp factor|}}} |
;Wood Yield
+
  {{#if: {{#var:setProperty}} | {{#set: Armor - Sharp Factor = {{{armor - sharp factor|}}} }} }}
:{{{wood|}}}}}
+
;Armor - Sharp
 +
:×{{{armor - sharp factor|}}}
 +
}}
  
 +
{{#if: {{{armor - blunt factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Armor - Blunt Factor = {{{armor - blunt factor|}}} }} }}
 +
;Armor - Blunt
 +
:×{{{armor - blunt factor|}}}
 +
}}
  
<!--Buildings-->
+
{{#if: {{{armor - heat factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Armor - Heat Factor = {{{armor - heat factor|}}} }} }}
 +
;Armor - Heat
 +
:×{{{armor - heat factor|}}}
 +
}}
  
{{#if: {{{power|}}}|{{#set:Power Consumption = {{{power|}}} }}
+
{{#if: {{{insulation - cold factor|}}} |
;Power
+
  {{#if: {{#var:setProperty}} | {{#set: Insulation - Cold Factor = {{{insulation - cold factor|}}} }} }}
:{{{power|}}}W}}
+
;Insulation - Cold
 +
:+{{Temperature| {{{insulation - cold factor|}}} || delta }}
 +
}}
  
{{#if: {{{facility|}}}|{{#set:Facility = {{{facility|}}} }}}}
+
{{#if: {{{insulation - heat factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Insulation - Heat Factor = {{{insulation - heat factor|}}} }} }}
 +
;Insulation - Heat
 +
:+{{Temperature| {{{insulation - heat factor|}}} || delta }}
 +
}}
  
<!--Floors-->
+
{{#if: {{{melee blunt damage factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Melee Blunt Damage Factor = {{{melee blunt damage factor|}}} }} }}
 +
;Melee Blunt Damage
 +
:×{{{melee blunt damage factor|}}}
 +
}}
  
{{#if: {{{speed|}}}|{{#set:Move Speed Factor = {{{speed|}}} }}
+
{{#if: {{{melee sharp damage factor|}}} |
;Move Speed Factor
+
  {{#if: {{#var:setProperty}} | {{#set: Melee Sharp Damage Factor = {{{melee sharp damage factor|}}} }} }}
:{{#expr:{{{speed|}}}*100}}%
+
;Melee Sharp Damage
 +
:×{{{melee sharp damage factor|}}}
 
}}
 
}}
  
<!--Furniture-->
+
{{#if: {{{melee cooldown factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Melee Cooldown Factor = {{{melee cooldown factor|}}} }} }}
 +
;Melee Cooldown
 +
:×{{{melee cooldown factor|}}}
 +
}}
  
{{#if: {{{immunity gain speed factor|}}}|{{#set:Immunity Gain Speed Factor = {{{immunity gain speed factor|}}} }}
+
{{#if: {{{door opening speed factor|}}} |
;Immunity Gain Speed Factor
+
  {{#if: {{#var:setProperty}} | {{#set: Door Opening Speed Factor = {{{door opening speed factor|}}} }} }}
:{{{immunity gain speed factor|}}}}}
+
;Door Opening Speed
 +
:×{{{door opening speed factor|}}}
 +
}}
  
{{#if: {{{rest effectiveness|}}}|{{#set:Rest Effectiveness = {{{rest effectiveness|}}} }}
+
{{#if: {{{rest effectiveness factor|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Rest Effectiveness Factor = {{{rest effectiveness factor|}}} }} }}
 
;Rest Effectiveness
 
;Rest Effectiveness
:{{{rest effectiveness|}}}}}
+
:×{{{rest effectiveness factor|}}}
 +
}}
  
{{#if: {{{comfort|}}}|{{#set:Comfort Base = {{{comfort|}}} }}
 
;Comfort
 
:{{{comfort|}}}}}
 
  
{{#if: {{{comfort offset|}}}|{{#set:Comfort Offset = {{{comfort offset|}}} }}
+
<!-- Medicine -->
;Comfort Offset
+
{{#if: {{{medical potency base|}}} {{{medical quality max|}}} |
:{{{comfort offset|}}}}}
+
</dl>{{clear}}
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Medical'''</p>
 +
<dl>
 +
}}
 +
 
 +
{{#if: {{{medical potency base|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Medical Potency Base = {{{medical potency base|}}} }} }}
 +
;Medical Potency
 +
:{{%| {{{medical potency base|}}} }}
 +
}}
 +
 
 +
{{#if: {{{medical quality max|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Medical Quality Max = {{{medical quality max|}}} }} }}
 +
;Max medical tend quality
 +
:{{%| {{{medical quality max|}}} }}
 +
}}
  
{{#if: {{{cover|}}}|{{#set:Cover Effectiveness= {{{cover|}}} }}
 
;Cover Effectiveness
 
:{{#expr:{{{cover|}}}*100}}%}}
 
  
<!--Weapons-->
+
<!--Plants-->
 +
{{#if: {{{grow days|}}} {{{sow work|}}} {{{harvest work|}}} {{{product|}}} {{{yield|}}} {{{min sowing skill|}}} {{{min fertility|}}} {{{fertility sensitivity|}}} |
 +
</dl>{{clear}}
 +
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Plant Stats'''</p>
 +
<dl>
 +
}}
  
{{#if: {{{class|}}}|{{#set:Class = {{{class|}}} Weapons}}
+
{{#if: {{{grow days|}}} |
;Class
+
  {{#vardefine:realGrowDays | {{#expr: {{{grow days|}}} / 0.54167 round 2}} }}
:[[{{{class|}}} Weapons|{{{class|}}}]]
+
  {{#if: {{#var:setProperty}} | {{#set: Grow Days = {{{grow days|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Real Grow Days = {{#var:realGrowDays}} }} }}
 +
;Time to grow
 +
:{{{grow days|}}} days {{Hover title|link=no|Actual days to grow, taking into account rest time|({{#var:realGrowDays}} days)}}
 
}}
 
}}
  
{{#if: {{{mode|}}}|{{#set:Mode = {{{mode|}}} }}
+
{{#if: {{{lifespanDaysPerGrowDays|}}} |
;Mode
+
  {{#if: {{{grow days|}}} |
:{{{mode|}}}}}
+
    {{#if: {{#var:setProperty}} | {{#set: Lifespan Days Per Grow Days = {{{lifespanDaysPerGrowDays|}}} }} }}
 +
;Lifespan
 +
:{{#ifeq: {{{lifespanDaysPerGrowDays|}}} | 0 | Indefinite |  {{#if: {{#var:setProperty}} | {{#set: Lifespan = {{#expr: {{{grow days|}}} * {{{lifespanDaysPerGrowDays|}}} }}}}}}{{#expr: {{{grow days|}}} * {{{lifespanDaysPerGrowDays|}}} }} days}}
 +
}} }}
  
 +
{{#if: {{{sow work|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Sow Work = {{{sow work|}}} }} }}
 +
;Work to Sow
 +
:{{ticks| {{{sow work|}}} }}
 +
}}
  
 +
{{#if: {{{harvest work|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Harvest Work = {{{harvest work|}}} }} }}
 +
;Work to Harvest
 +
:{{ticks| {{{harvest work|}}} }}
 +
}}
  
 +
{{#if: {{{product|}}} |
 +
{{#if: {{{yield|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Harvest Product = {{{product|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Harvest Yield = {{{yield|}}} }} }}
 +
;{{Hover title|link=no|Assumes 1x multipliers from difficulty, pawn stats, and other sources.|Base Harvest Yield}}
 +
:{{{yield|}}} {{Icon Small| {{{product|}}} | 16 }}
 +
}} }}
  
 +
{{#if: {{{min sowing skill|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Minimum Required Growing Skill = {{{min sowing skill|}}} }} }}
 +
;{{Hover title|link=no|Minimum skill required to sow the plant|Min Skill}}
 +
:{{{min sowing skill|}}} [[Skills#Plants|Plants]]
 +
}}
  
{{#if: {{{damage type|}}}|{{#set:Damage Type = {{{damage type|}}} }}
+
{{#if: {{{min fertility|}}} |
;Dmg Type
+
  {{#if: {{#var:setProperty}} | {{#set:Fertility Min = {{{min fertility|}}} }} }}
:{{{damage type|}}} }}
+
;Min Fertility
 +
:{{%| {{{min fertility|}}} }}
 +
}}
  
{{#if: {{{damage|}}}|
+
{{#if: {{{fertility sensitivity|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Fertility Sensitivity = {{{fertility sensitivity|}}} }} }}
 +
;Fertility Sensitivity
 +
:{{%| {{{fertility sensitivity|}}} }}
 +
}}
  
<!--the following determines if the item is a melee weapon, else assumes it's ranged, then sets relevant property-->
+
{{#if: {{{fertility sensitivity|}}} |
 +
  {{#if: {{{grow days|}}} |
 +
    {{#if: {{{yield|}}} |
 +
      {{#if: {{#var:setProperty}} | {{#set: Harvest Yield Per Day (70)  = {{#expr: {{{yield|}}}/( ({{{grow days|}}}/0.54167) / (((0.7-1)*{{{fertility sensitivity|}}}) + 1)) round 2}} }} }}
 +
      {{#if: {{#var:setProperty}} | {{#set: Harvest Yield Per Day (100) = {{#expr: {{{yield|}}}/( ({{{grow days|}}}/0.54167) / (((1.0-1)*{{{fertility sensitivity|}}}) + 1)) round 2}} }} }}
 +
      {{#if: {{#var:setProperty}} | {{#set: Harvest Yield Per Day (140) = {{#expr: {{{yield|}}}/( ({{{grow days|}}}/0.54167) / (((1.4-1)*{{{fertility sensitivity|}}}) + 1)) round 2}} }} }}
 +
      {{#if: {{#pos:{{{sowTags|}}}|Hydroponic}} | {{#if: {{#var:setProperty}} | {{#set: Harvest Yield Per Day (280) = {{#expr: {{{yield|}}}/( ({{{grow days|}}}/0.54167) / (((2.8-1)*{{{fertility sensitivity|}}}) + 1)) round 2}} }} }} }}
 +
}} }} }}
  
{{#ifeq: {{#varexists: MobAverageDPS}}|1|
 
;Average DPS
 
:{{#var: MobAverageDPS}}
 
{{#set: Mob Average DPS = {{#var: MobAverageDPS}} }} }}
 
  
{{#if: {{{mode|}}}|{{#ifeq: {{{mode|}}} | Melee |
+
<!-- Weapons -->
{{#set:Melee Damage Base = {{{damage|}}}
+
{{#ifeq: {{{mode|}}} | Melee
|Melee Warmup = {{{warmup|}}}
+
  | {{#if: {{#var:setProperty}} | {{#set: Melee Damage Base = {{{damage|}}} | Melee Warmup = {{{warmup|}}} | Melee Cooldown Base = {{{cooldown|}}} }} }}
|Melee Cooldown Base = {{{cooldown|}}}
+
  | {{#if: {{#var:setProperty}} | {{#set: Damage Base = {{{damage|}}} }} }}
}}
+
    {{#if: {{{mode|}}}
|
+
    | {{#if: {{#var:setProperty}} | {{#set: Aiming Time Base = {{{warmup|}}} | Ranged Cooldown Base = {{{cooldown|}}} | Weapons/Row/Ranged/NoInclude = False }}
{{#set:Damage Base = {{{damage|}}}
+
    }} }}
|Aiming Time Base = {{{warmup|}}}
 
|Ranged Cooldown Base = {{{cooldown|}}}
 
|Weapons/Row/Ranged/NoInclude=False
 
}} }} |}}
 
  
 +
{{#if: {{{damage type|}}} {{{damage|}}} {{{armorPenetration|}}} {{{warmup|}}} {{{cooldown |}}} {{{range|}}} {{{minrange|}}} {{{accuracy|}}} {{{accuracyTouch|}}} {{{accuracyShort|}}} {{{accuracyMedium|}}} {{{accuracyLong|}}} {{{accuracyAvg|}}} {{{velocity|}}} {{{burst|}}} {{{burstTicks|}}} {{{missRadius|}}} {{{blastRadius|}}} {{{DPS|}}} {{{stoppingPower|}}} |
 
</dl>{{clear}}
 
</dl>{{clear}}
 
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Ranged Combat'''</p>
 
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Ranged Combat'''</p>
 
<dl>
 
<dl>
 +
}}
 +
 +
{{#if: {{{mode|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Mode = {{{mode|}}} }} }}
 +
;Mode
 +
:{{{mode|}}}
 +
}}
 +
 +
}}
  
 +
{{#if: {{{damage|}}} |
 
;Damage
 
;Damage
:{{{damage|}}}
+
:{{{damage|}}} dmg {{#if: {{{damage type|}}} | {{#if: {{#var:setProperty}} | {{#set: Damage Type = {{ucfirst:{{{damage type|}}} }} }} }}([[Damage Types#{{ucfirst:{{{damage type|}}} }}|{{ucfirst:{{{damage type|}}} }}]])}}
 
}}
 
}}
  
{{#if: {{{armorPenetration|}}}|{{#set:ArmorPenetration= {{{armorPenetration|}}} }}
+
{{#if: {{{armorPenetration|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Armor Penetration = {{{armorPenetration|}}} }} }}
 
;Armor penetration
 
;Armor penetration
:{{{armorPenetration|}}}%}}
+
:{{{armorPenetration|}}}%
 +
}}
  
{{#if: {{{warmup|}}}|
+
{{#if: {{{warmup|}}} |
;{{H:title|link=no|Time it takes to aim the weapon|Warm-Up}}
+
;{{Hover title | link=no | Time it takes to aim the weapon | Warm-Up }}
:{{ticks|{{{warmup|}}}}}}}
+
:{{ticks| {{{warmup|}}} }}
 +
}}
  
{{#if: {{{cooldown |}}}|
+
{{#if: {{{cooldown |}}} |
;{{H:title|link=no|Waiting time before you can aim again after firing|Cooldown}}
+
;{{Hover title| link=no | Waiting time before you can aim again after firing | Cooldown }}
:{{ticks|{{{cooldown|}}}}}}}
+
:{{ticks| {{{cooldown|}}} }}
 +
}}
  
{{#if: {{{range|}}}|{{#set:Range = {{{range|}}} }}
+
{{#if: {{{range|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Range = {{{range|}}} }} }}
 
;Range
 
;Range
:{{{range|}}} tile(s)}}
+
:{{{range|}}} tile(s)
 +
}}
  
{{#if: {{{minrange|}}}|
+
{{#if: {{{minrange|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Minimum Range = {{{minrange|}}} }} }}
 
;Minimum Range
 
;Minimum Range
:{{{minrange|}}} tiles}}
+
:{{{minrange|}}} tiles
 +
}}
  
{{#if: {{{accuracy|}}}|
+
{{#if: {{{accuracy|}}} |
 
;Accuracy
 
;Accuracy
:{{{accuracy|}}}}}
+
:{{{accuracy|}}}
 +
}}
  
{{#if: {{{accuracyTouch|}}}| {{#Set: Accuracy (Touch) Base = {{{accuracyTouch|}}} }}  
+
{{#if: {{{accuracyTouch|}}} |
{{#if: {{{accuracyShort|}}}| {{#Set: Accuracy (Short) Base = {{{accuracyShort|}}} }}  
+
  {{#if: {{#var:setProperty}} | {{#set: Accuracy (Touch) Base = {{{accuracyTouch|}}} }} }}
{{#if: {{{accuracyMedium|}}}| {{#Set: Accuracy (Medium) Base = {{{accuracyMedium|}}} }}       
+
  {{#if: {{{accuracyShort|}}} |
{{#if: {{{accuracyLong|}}}| {{#Set: Accuracy (Long) Base = {{{accuracyLong|}}} }}
+
    {{#if: {{#var:setProperty}} | {{#set: Accuracy (Short) Base = {{{accuracyShort|}}} }} }}
;{{H:title|link=no|Touch % - Short % - Medium % - Long %|Accuracy}}
+
    {{#if: {{{accuracyMedium|}}} |
 +
      {{#if: {{#var:setProperty}} | {{#set: Accuracy (Medium) Base = {{{accuracyMedium|}}} }} }}
 +
       {{#if: {{{accuracyLong|}}} |
 +
        {{#if: {{#var:setProperty}} | {{#set: Accuracy (Long) Base = {{{accuracyLong|}}} }} }}
 +
;{{Hover title|link=no|Touch % - Short % - Medium % - Long %|Accuracy}}
 
:{{{accuracyTouch|}}}% - {{{accuracyShort|}}}% - {{{accuracyMedium|}}}% - {{{accuracyLong|}}}%
 
:{{{accuracyTouch|}}}% - {{{accuracyShort|}}}% - {{{accuracyMedium|}}}% - {{{accuracyLong|}}}%
}}    
+
}} }} }} }}
 +
 
 +
{{#if: {{{accuracyAvg|}}} |
 +
;{{Hover title| link=no | Average accuracy of the weapon, taking range into account. | Avg. accuracy }}
 +
:{{{accuracyAvg|}}}%
 
}}
 
}}
}}
 
}}
 
 
{{#if: {{{accuracyAvg|}}}|
 
;{{H:title|link=no|Average accuracy of the weapon, taking range into account.|Avg. accuracy}}
 
:{{{accuracyAvg|}}}%}}
 
  
{{#if: {{{velocity|}}}|{{#set:Velocity = {{{velocity|}}} }}
+
{{#if: {{{velocity|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Velocity = {{{velocity|}}} }} }}
 
;Velocity
 
;Velocity
:{{{velocity|}}} (m/s)}}
+
:{{{velocity|}}} (m/s)
 +
}}
  
{{#if: {{{burst|}}}|{{#set:Burst Count = {{{burst|}}} }}
+
{{#if: {{{burst|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Burst Count = {{{burst|}}} }} }}
 
;Burst Count
 
;Burst Count
:{{{burst|}}} (per burst)}}
+
:{{{burst|}}} (per burst)
 +
}}
  
{{#if: {{{burstTicks|}}}|{{#set: Burst Ticks = {{{burstTicks|}}} }}
+
{{#if: {{{burstTicks|}}} |
;{{H:title|link=no|Time between shots in a single burst|Burst Ticks}}
+
  {{#if: {{#var:setProperty}} | {{#set: Burst Ticks = {{{burstTicks|}}} }} }}
:{{ticks|{{{burstTicks|}}}}}}}
+
;{{Hover title| link=no | Time between shots in a single burst | Burst Ticks }}
 +
:{{ticks| {{{burstTicks|}}} }}<br>({{#expr: 3600 / {{{burstTicks|}}} round2}} {{Hover title| link=no | Rounds Per Minute | RPM }})
 +
}}
  
{{#if: {{{missRadius|}}}|{{#set:Miss Radius = {{{missRadius|}}} }}
+
{{#if: {{{missRadius|}}} |
;{{H:title|link=no|Missed shots are forced to land within this radius|Miss Radius}}
+
  {{#if: {{#var:setProperty}} | {{#set: Miss Radius = {{{missRadius|}}} }} }}
:{{{missRadius|}}} tile(s)}}
+
;{{Hover title| link=no | Missed shots are forced to land within this radius | Miss Radius }}
 +
:{{{missRadius|}}} tile(s)
 +
}}
  
{{#if: {{{blastRadius|}}}|{{#set:Blast Radius = {{{blastRadius|}}} }}
+
{{#if: {{{blastRadius|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Blast Radius = {{{blastRadius|}}} }} }}
 
;Blast Radius
 
;Blast Radius
:{{{blastRadius|}}}}}
+
:{{{blastRadius|}}}
 +
}}
  
{{#if: {{{DPS|}}}|
+
{{#if: {{{DPS|}}} |
;{{H:title|link=yes|Formatted as: Maximum damage per second (DPS with average accuracy)|DPS}}
+
  {{#vardefine:maximumDPS | {{#expr: ((( {{{damage|}}} * {{#if: {{{burst|}}} | {{{burst|}}} | 1 }} ) / (( {{#if: {{{cooldown|}}} | {{{cooldown|}}} | 1 }} + {{#if: {{{warmup|}}} | {{{warmup|}}} | 0 }} + ( {{#if: {{{burstTicks|}}} | {{{burstTicks|}}} | 1 }} * ( {{#if: {{{burst|}}} | {{{burst|}}}|1}} - 1 ))) / 60))) round2}} }}
:{{ #expr: ((( {{{damage|}}} * {{#if: {{{burst|}}}|{{{burst|}}}|1}} ) / (( {{#if: {{{cooldown|}}}|{{{cooldown|}}}|1}} + {{#if: {{{warmup|}}}|{{{warmup|}}}|0}} + ( {{#if: {{{burstTicks|}}}|{{{burstTicks|}}}|1}} * ( {{#if: {{{burst|}}}|{{{burst|}}}|1}} - 1 ))) / 60))) round2 }} {{#if: {{{accuracyTouch|}}}| {{#if: {{{accuracyShort|}}}| {{#if: {{{accuracyMedium|}}}| {{#if: {{{accuracyLong|}}}|({{ #expr: ((( {{{damage|}}} * {{#if: {{{burst|}}}|{{{burst|}}}|1}} ) / (( {{#if: {{{cooldown|}}}|{{{cooldown|}}}|1}} + {{#if: {{{warmup|}}}|{{{warmup|}}}|0}} + ( {{#if: {{{burstTicks|}}}|{{{burstTicks|}}}|1}} * ( {{#if: {{{burst|}}}|{{{burst|}}}|1}} - 1 ))) / 60)) * ({{{accuracyAvg|}}} / 100)) round2 }})}}}}}}}}
+
  {{#if: {{#var:setProperty}} | {{#set: Maximum DPS = {{#var:maximumDPS}} }} }}
{{#set:Maximum DPS={{ #expr: ((( {{{damage|}}} * {{#if: {{{burst|}}}|{{{burst|}}}|1}} ) / (( {{#if: {{{cooldown|}}}|{{{cooldown|}}}|1}} + {{#if: {{{warmup|}}}|{{{warmup|}}}|0}} + ( {{#if: {{{burstTicks|}}}|{{{burstTicks|}}}|1}} * ( {{#if: {{{burst|}}}|{{{burst|}}}|1}} - 1 ))) / 60))) round2 }}}}
+
  {{#if: {{{accuracyTouch|}}} |
{{#set:Average DPS={{#if: {{{accuracyTouch|}}}| {{#if: {{{accuracyShort|}}}| {{#if: {{{accuracyMedium|}}}| {{#if: {{{accuracyLong|}}}|{{#expr: ((( {{{damage|}}} * {{#if: {{{burst|}}}|{{{burst|}}}|1}} ) / (( {{#if: {{{cooldown|}}}|{{{cooldown|}}}|1}} + {{#if: {{{warmup|}}}|{{{warmup|}}}|0}} + ( {{#if: {{{burstTicks|}}}|{{{burstTicks|}}}|1}} * ( {{#if: {{{burst|}}}|{{{burst|}}}|1}} - 1 ))) / 60)) * ({{{accuracyAvg|}}} / 100)) round 2 }}}}}}}}}}}}
+
    {{#if: {{{accuracyShort|}}} |
 +
      {{#if: {{{accuracyMedium|}}} |
 +
    {{#if: {{{accuracyLong|}}} |
 +
  {{#vardefine:averageDPS | {{#expr: ((( {{{damage|}}} * {{#if: {{{burst|}}} | {{{burst|}}} | 1 }} ) / (( {{#if: {{{cooldown|}}} | {{{cooldown|}}} | 1 }} + {{#if: {{{warmup|}}} | {{{warmup|}}} | 0 }} + ( {{#if: {{{burstTicks|}}} | {{{burstTicks|}}} | 1 }} * ( {{#if: {{{burst|}}} | {{{burst|}}} | 1 }} - 1 ))) / 60)) * ({{{accuracyAvg|}}} / 100)) round2}} }} }} }} }} }}
 +
          {{#if: {{#var:setProperty}} | {{#set: Average DPS = {{#var:maximumDPS}} }} }}
 +
;{{Hover title| link=yes | Formatted as: Maximum damage per second (DPS with average accuracy) | DPS }}
 +
:{{#var:maximumDPS}} {{#if: {{#var:averageDPS}} | ({{#var:averageDPS}}) }}
 
}}
 
}}
  
{{#if: {{{stoppingPower|}}}|{{#set: Stopping power = {{{stoppingPower|}}} }}
+
{{#if: {{{stoppingPower|}}} |
;{{H:title|link=no|Ability of a weapon to 'stagger' targets, slowing them down for a short while. Larger values allow the weapon to stagger targets with bigger body sizes.|Stopping power}}
+
  {{#if: {{#var:setProperty}} | {{#set: Stopping Power = {{{stoppingPower|}}} }} }}
:{{{stoppingPower|}}}}}
+
;{{Hover title| link=no | Ability of a weapon to 'stagger' targets, slowing them down for a short while. Larger values allow the weapon to stagger targets with bigger body sizes. | Stopping power}}
 +
:{{{stoppingPower|}}}
 +
}}
  
  
 +
<!-- Animal and Weapon Melee Combat-->
 +
{{#if: {{{attack1dmg|}}}{{{attack1ap|}}}{{{attack1type|}}}{{{attack1part|}}}{{{attack1cool|}}}{{{attack1chancefactor|}}}    {{{attack2dmg|}}}{{{attack2ap|}}}{{{attack2type|}}}{{{attack2part|}}}{{{attack2cool|}}}{{{attack2chancefactor|}}}    {{{attack3dmg|}}}{{{attack3ap|}}}{{{attack3type|}}}{{{attack3part|}}}{{{attack3cool|}}}{{{attack3chancefactor|}}}    {{{attack4dmg|}}}{{{attack4ap|}}}{{{attack4type|}}}{{{attack4part|}}}{{{attack4cool|}}}{{{attack4chancefactor|}}}    {{{attack5dmg|}}}{{{attack5ap|}}}{{{attack5type|}}}{{{attack45art|}}}{{{attack5cool|}}}{{{attack5chancefactor|}}}    {{{attack6dmg|}}}{{{attack6ap|}}}{{{attack6type|}}}{{{attack46art|}}}{{{attack6cool|}}}{{{attack6chancefactor|}}}    {{{mobdamageaverage|}}} {{{mobdamage|}}} {{{meleeattack1dmg|}}}{{{meleeattack1type|}}}{{{meleeattack1part|}}}{{{meleeattack1cool|}}} {{{MeleeWeaponAverageDPS|}}} {{{MeleeWeaponAverageAP|}}}|
 
</dl>{{clear}}
 
</dl>{{clear}}
 
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Melee Combat'''</p>
 
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Melee Combat'''</p>
 
<dl>
 
<dl>
 +
}}
 +
<!-- Animal Melee Combat -->
 +
 
{{#if: {{{attack1dmg|}}}{{{attack1type|}}}{{{attack1part|}}}{{{attack1cool|}}}|
 
{{#if: {{{attack1dmg|}}}{{{attack1type|}}}{{{attack1part|}}}{{{attack1cool|}}}|
   {{#set:Attack 1 Damage = {{{attack1dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Damage = {{{attack1dmg|}}} }} }}
   {{#set:Attack 1 Type = {{{attack1type|}}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 1 AP = {{{attack1ap|{{#expr: ({{{attack1dmg|}}}*1.5-0.001) round 0}} }}} }} }}
   {{#set:Attack 1 Part = {{{attack1part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Type = {{ucfirst:{{{attack1type|}}} }} }} }}
   {{#set:Attack 1 Cooldown = {{{attack1cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Part = {{{attack1part|}}} }} }}
   {{#vardefine: Attack1DPS | {{#expr: {{{attack1dmg|}}} / ({{{attack1cool}}} / 60) }} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Cooldown = {{{attack1cool|}}} }} }}
   {{#set: Attack 1 DPS = {{#var: Attack1DPS}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 1 Chance Factor = {{{attack1chancefactor|}}} }} }}
 +
   {{#vardefine: Attack1DPS | {{#expr: {{{attack1dmg|}}} / ({{{attack1cool}}}) }} }}
 +
   {{#if: {{#var:setProperty}} | {{#set: Attack 1 DPS = {{#var: Attack1DPS}} }} }}
 
;Attack{{#if: {{{attack2dmg|}}}|&nbsp;1}}
 
;Attack{{#if: {{{attack2dmg|}}}|&nbsp;1}}
:{{{attack1part|Body part?}}}<br>{{{attack1dmg|?}}} dmg ({{{attack1type|type?}}})<br>{{#expr: ({{{attack1dmg|}}}*1.5-0.001) round 0}}% AP<br>{{ticks|{{{attack1cool|0}}}}} }}<!--
+
:{{{attack1part|Body part?}}}<br>{{{attack1dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{attack1type|}}}}}|{{ucfirst:{{{attack1type|type?}}}}}]])<br>{{{attack1ap|{{#expr: ({{{attack1dmg|}}}*1.5-0.001) round 0}}}}}% {{AP}}<br>{{{attack1cool|0}}} second cooldown}}<!--
-->{{#if: {{{attack1stun|}}}|{{#set:Attack 1 Stun = {{{attack1stun|}}}}}<br>Stun for {{ticks|{{{attack1stun|0}}}*20}} on first strike}}
+
-->{{#if: {{{attack1stun|}}}|{{#if: {{#var:setProperty}} | {{#set:Attack 1 Stun = {{{attack1stun|}}}}} }}<br>Stun for {{ticks|{{{attack1stun|0}}}*20}} on first strike}}
  
 
{{#if: {{{attack2dmg|}}}{{{attack2type|}}}{{{attack2part|}}}{{{attack2cool|}}}|
 
{{#if: {{{attack2dmg|}}}{{{attack2type|}}}{{{attack2part|}}}{{{attack2cool|}}}|
   {{#set:Attack 2 Damage = {{{attack2dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Damage = {{{attack2dmg|}}} }} }}
   {{#set:Attack 2 Type = {{{attack2type|}}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 2 AP = {{{attack2ap|{{#expr: ({{{attack2dmg|}}}*1.5-0.001) round 0}} }}} }} }}
   {{#set:Attack 2 Part = {{{attack2part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Type = {{ucfirst:{{{attack2type|}}} }} }} }}
   {{#set:Attack 2 Cooldown = {{{attack2cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Part = {{{attack2part|}}} }} }}
   {{#vardefine: Attack2DPS | {{#expr: {{{attack2dmg|}}} / ({{{attack2cool}}} / 60) }} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Cooldown = {{{attack2cool|}}} }} }}
   {{#set: Attack 2 DPS = {{#var: Attack2DPS}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 2 Chance Factor = {{{attack2chancefactor|}}} }} }}
 +
   {{#vardefine: Attack2DPS | {{#expr: {{{attack2dmg|}}} / ({{{attack2cool}}}) }} }}
 +
   {{#if: {{#var:setProperty}} | {{#set: Attack 2 DPS = {{#var: Attack2DPS}} }} }}
 
;Attack 2
 
;Attack 2
:{{{attack2part|Body part?}}}<br>{{{attack2dmg|?}}} dmg ({{{attack2type|type?}}})<br>{{#expr: ({{{attack1dmg|}}}*1.5-0.001) round 0}}% AP<br>{{ticks|{{{attack2cool|0}}}}} }}<!--
+
:{{{attack2part|Body part?}}}<br>{{{attack2dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{attack2type|}}}}}|{{ucfirst:{{{attack2type|type?}}}}}]])<br>{{{attack2ap|{{#expr: ({{{attack2dmg|}}}*1.5-0.001) round 0}}}}}% {{AP}}<br>{{{attack2cool|0}}} second cooldown}}<!--
-->{{#if: {{{attack2stun|}}}|{{#set:Attack 2 Stun = {{{attack2stun|}}}}}<br>Stun for {{ticks|{{{attack2stun|0}}}*20}} on first strike}}
+
-->{{#if: {{{attack2stun|}}}|{{#if: {{#var:setProperty}} | {{#set:Attack 2 Stun = {{{attack2stun|}}}}} }}<br>Stun for {{ticks|{{{attack2stun|0}}}*20}} on first strike}}
  
 
{{#if: {{{attack3dmg|}}}{{{attack3type|}}}{{{attack3part|}}}{{{attack3cool|}}}|
 
{{#if: {{{attack3dmg|}}}{{{attack3type|}}}{{{attack3part|}}}{{{attack3cool|}}}|
   {{#set:Attack 3 Damage = {{{attack3dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Damage = {{{attack3dmg|}}} }} }}
   {{#set:Attack 3 Type = {{{attack3type|}}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 3 AP = {{{attack3ap|{{#expr: ({{{attack3dmg|}}}*1.5-0.001) round 0}} }}} }} }}
   {{#set:Attack 3 Part = {{{attack3part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Type = {{ucfirst:{{{attack3type|}}} }} }} }}
   {{#set:Attack 3 Cooldown = {{{attack3cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Part = {{{attack3part|}}} }} }}
   {{#vardefine: Attack3DPS | {{#expr: {{{attack3dmg|}}} / ({{{attack3cool}}} / 60) }} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Cooldown = {{{attack3cool|}}} }} }}
   {{#set: Attack 3 DPS = {{#var: Attack3DPS}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 3 Chance Factor = {{{attack3chancefactor|}}} }} }}
 +
   {{#vardefine: Attack3DPS | {{#expr: {{{attack3dmg|}}} / ({{{attack3cool}}}) }} }}
 +
   {{#if: {{#var:setProperty}} | {{#set: Attack 3 DPS = {{#var: Attack3DPS}} }} }}
 
;Attack 3
 
;Attack 3
:{{{attack3part|Body part?}}}<br>{{{attack3dmg|?}}} dmg ({{{attack3type|type?}}})<br>{{#expr: ({{{attack1dmg|}}}*1.5-0.001) round 0}}% AP<br>{{ticks|{{{attack3cool|0}}}}} }}<!--
+
:{{{attack3part|Body part?}}}<br>{{{attack3dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{attack3type|}}}}}|{{ucfirst:{{{attack3type|type?}}}}}]])<br>{{{attack3ap|{{#expr: ({{{attack3dmg|}}}*1.5-0.001) round 0}}}}}% {{AP}}<br>{{{attack3cool|0}}} second cooldown}}<!--
-->{{#if: {{{attack3stun|}}}|{{#set:Attack 3 Stun = {{{attack3stun|}}}}}<br>Stun for {{ticks|{{{attack3stun|0}}}*20}} on first strike}}
+
-->{{#if: {{{attack3stun|}}}|{{#if: {{#var:setProperty}} | {{#set:Attack 3 Stun = {{{attack3stun|}}}}} }}<br>Stun for {{ticks|{{{attack3stun|0}}}*20}} on first strike}}
  
 
{{#if: {{{attack4dmg|}}}{{{attack4type|}}}{{{attack4part|}}}{{{attack4cool|}}}|
 
{{#if: {{{attack4dmg|}}}{{{attack4type|}}}{{{attack4part|}}}{{{attack4cool|}}}|
   {{#set:Attack 4 Damage = {{{attack4dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Damage = {{{attack4dmg|}}} }} }}
   {{#set:Attack 4 Type = {{{attack4type|}}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 4 AP = {{{attack4ap|{{#expr: ({{{attack4dmg|}}}*1.5-0.001) round 0}} }}} }} }}
   {{#set:Attack 4 Part = {{{attack4part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Type = {{ucfirst:{{{attack4type|}}} }} }} }}
   {{#set:Attack 4 Cooldown = {{{attack4cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Part = {{{attack4part|}}} }} }}
   {{#vardefine: Attack4DPS | {{#expr: {{{attack4dmg|}}} / ({{{attack4cool}}} / 60) }} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Cooldown = {{{attack4cool|}}} }} }}
   {{#set: Attack 4 DPS = {{#var: Attack4DPS}} }}
+
  {{#if: {{#var:setProperty}} | {{#set:Attack 4 Chance Factor = {{{attack4chancefactor|}}} }} }}
 +
   {{#vardefine: Attack4DPS | {{#expr: {{{attack4dmg|}}} / ({{{attack4cool}}}) }} }}
 +
   {{#if: {{#var:setProperty}} | {{#set: Attack 4 DPS = {{#var: Attack4DPS}} }} }}
 
;Attack 4
 
;Attack 4
:{{{attack4part|Body part?}}}<br>{{{attack4dmg|?}}} dmg ({{{attack4type|type?}}})<br>{{#expr: ({{{attack1dmg|}}}*1.5-0.001) round 0}}% AP<br>{{ticks|{{{attack4cool|0}}}}} on first strike}}<!--
+
:{{{attack4part|Body part?}}}<br>{{{attack4dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{attack4type|}}}}}|{{ucfirst:{{{attack4type|type?}}}}}]])<br>{{{attack4ap|{{#expr: ({{{attack4dmg|}}}*1.5-0.001) round 0}}}}}% {{AP}}<br>{{{attack4cool|0}}} second cooldown}}<!--
-->{{#if: {{{attack4stun|}}}|{{#set:Attack 4 Stun = {{{attack4stun|}}}}}<br>Stun for {{ticks|{{{attack4stun|0}}}*20}}}}
+
-->{{#if: {{{attack4stun|}}}|{{#if: {{#var:setProperty}} | {{#set:Attack 4 Stun = {{{attack4stun|}}}}} }}<br>Stun for {{ticks|{{{attack4stun|0}}}*20}} on first strike}}
 +
 
 +
{{#if: {{{attack5dmg|}}}{{{attack5type|}}}{{{attack5part|}}}{{{attack5cool|}}}|
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 5 Damage = {{{attack5dmg|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 5 AP = {{{attack5ap|{{#expr: ({{{attack5dmg|}}}*1.5-0.001) round 0}} }}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 5 Type = {{ucfirst:{{{attack5type|}}} }} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 5 Part = {{{attack5part|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 5 Cooldown = {{{attack5cool|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 5 Chance Factor = {{{attack5chancefactor|}}} }} }}
 +
  {{#vardefine: Attack5DPS | {{#expr: {{{attack5dmg|}}} / ({{{attack5cool}}}) }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Attack 5 DPS = {{#var: Attack5DPS}} }} }}
 +
;Attack 5
 +
:{{{attack5part|Body part?}}}<br>{{{attack5dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{attack5type|}}}}}|{{ucfirst:{{{attack5type|type?}}}}}]])<br>{{{attack5ap|{{#expr: ({{{attack5dmg|}}}*1.5-0.001) round 0}}}}}% {{AP}}<br>{{{attack5cool|0}}} second cooldown}}<!--
 +
-->{{#if: {{{attack5stun|}}}|{{#if: {{#var:setProperty}} | {{#set:Attack 5 Stun = {{{attack5stun|}}}}} }}<br>Stun for {{ticks|{{{attack5stun|0}}}*20}} on first strike}}
 +
 
 +
{{#if: {{{attack6dmg|}}}{{{attack6type|}}}{{{attack6part|}}}{{{attack6cool|}}}|
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 6 Damage = {{{attack6dmg|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 6 AP = {{{attack6ap|{{#expr: ({{{attack6dmg|}}}*1.5-0.001) round 0}} }}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 6 Type = {{ucfirst:{{{attack6type|}}} }} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 6 Part = {{{attack6part|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 6 Cooldown = {{{attack6cool|}}} }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set:Attack 6 Chance Factor = {{{attack6chancefactor|}}} }} }}
 +
  {{#vardefine: Attack6DPS | {{#expr: {{{attack6dmg|}}} / ({{{attack6cool}}}) }} }}
 +
  {{#if: {{#var:setProperty}} | {{#set: Attack 6 DPS = {{#var: Attack6DPS}} }} }}
 +
;Attack 6
 +
:{{{attack6part|Body part?}}}<br>{{{attack6dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{attack6type|}}}}}|{{ucfirst:{{{attack6type|type?}}}}}]])<br>{{{attack6ap|{{#expr: ({{{attack6dmg|}}}*1.5-0.001) round 0}}}}}% {{AP}}<br>{{{attack6cool|0}}} second cooldown}}<!--
 +
-->{{#if: {{{attack6stun|}}}|{{#if: {{#var:setProperty}} | {{#set:Attack 6 Stun = {{{attack6stun|}}}}} }}<br>Stun for {{ticks|{{{attack6stun|0}}}*20}} on first strike}}
 +
 
  
 +
{{#ifeq: {{#varexists: Attack6DPS}}|1|
 +
  {{#vardefine: MobAverageDPS | {{#expr: ({{#var: Attack1DPS}} + {{#var: Attack2DPS}} + {{#var: Attack3DPS}} + {{#var: Attack4DPS}} + {{#var: Attack5DPS}} + {{#var: Attack6DPS}})/6 * 0.62 round 2}} }}|
 +
{{#ifeq: {{#varexists: Attack5DPS}}|1|
 +
  {{#vardefine: MobAverageDPS | {{#expr: ({{#var: Attack1DPS}} + {{#var: Attack2DPS}} + {{#var: Attack3DPS}} + {{#var: Attack4DPS}} + {{#var: Attack5DPS}})/5 * 0.62 round 2}} }}|
 
{{#ifeq: {{#varexists: Attack4DPS}}|1|
 
{{#ifeq: {{#varexists: Attack4DPS}}|1|
 
   {{#vardefine: MobAverageDPS | {{#expr: ({{#var: Attack1DPS}} + {{#var: Attack2DPS}} + {{#var: Attack3DPS}} + {{#var: Attack4DPS}})/4 * 0.62 round 2}} }}|
 
   {{#vardefine: MobAverageDPS | {{#expr: ({{#var: Attack1DPS}} + {{#var: Attack2DPS}} + {{#var: Attack3DPS}} + {{#var: Attack4DPS}})/4 * 0.62 round 2}} }}|
Line 550: Line 1,235:
 
       {{#vardefine: MobAverageDPS | {{#expr: ({{#var: Attack1DPS}} + {{#var: Attack2DPS}})/2 * 0.62 round 2}} }}|
 
       {{#vardefine: MobAverageDPS | {{#expr: ({{#var: Attack1DPS}} + {{#var: Attack2DPS}})/2 * 0.62 round 2}} }}|
 
       {{#ifeq: {{#varexists: Attack1DPS}}|1|
 
       {{#ifeq: {{#varexists: Attack1DPS}}|1|
         {{#vardefine: MobAverageDPS | {{#expr: {{#var: Attack1DPS}} * 0.62 round 2}} }} }} }} }} }}
+
         {{#vardefine: MobAverageDPS | {{#expr: {{#var: Attack1DPS}} * 0.62 round 2}} }} }} }} }} }} }} }}
  
{{#ifeq: {{#varexists: MobAverageDPS}}|1|
+
{{#ifeq: {{#varexists: MobAverageDPS}} | 1 |
;Average DPS
+
  {{#if: {{#var:setProperty}} | {{#set: Mob Average DPS = {{#var: MobAverageDPS}} }} }}
 +
;Average {{DPS}}
 
:{{#var: MobAverageDPS}}
 
:{{#var: MobAverageDPS}}
{{#set: Mob Average DPS = {{#var: MobAverageDPS}} }} }}
+
}}
  
{{#if: {{{mobdamage|}}}|{{#set:Melee Damage Base = {{{mobdamage|}}} }}
+
{{#if: {{{mobdamage|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Melee Damage Base = {{{mobdamage|}}} }} }}
 
;Damage
 
;Damage
:{{{mobdamage|}}}}}
+
:{{{mobdamage|}}}
 +
}}
  
{{#if: {{{mobdamagetype|}}}|{{#set:Melee Damage Def = {{{mobdamagetype|}}} }}
+
{{#if: {{{mobdamagetype|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Melee Damage Def = {{{mobdamagetype|}}} }} }}
 
;Damage Type
 
;Damage Type
:{{{mobdamagetype|}}}}}
+
:{{{mobdamagetype|}}}
 +
}}
  
{{#if: {{{mobdamage2|}}}|{{#set:Melee Damage Base = {{{mobdamage2|}}} }}
+
{{#if: {{{mobdamage2|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Melee Damage Base = {{{mobdamage2|}}} }} }}
 
;Damage
 
;Damage
:{{{mobdamage2|}}}}}
+
:{{{mobdamage2|}}}
 +
}}
  
{{#if: {{{mobdamagetype2|}}}|{{#set:Melee Damage Def = {{{mobdamagetype2|}}} }}
+
{{#if: {{{mobdamagetype2|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Melee Damage Def = {{{mobdamagetype2|}}} }} }}
 
;Damage Type
 
;Damage Type
:{{{mobdamagetype2|}}}}}
+
:{{{mobdamagetype2|}}}
 +
}}
  
{{#if: {{{mobdamage3|}}}|{{#set:Melee Damage Base = {{{mobdamage3|}}} }}
+
{{#if: {{{mobdamage3|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Melee Damage Base = {{{mobdamage3|}}} }} }}
 
;Damage
 
;Damage
:{{{mobdamage3|}}}}}
+
:{{{mobdamage3|}}}
 +
}}
  
{{#if: {{{mobdamagetype3|}}}|{{#set:Melee Damage Def = {{{mobdamagetype3|}}} }}
+
{{#if: {{{mobdamagetype3|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Melee Damage Def = {{{mobdamagetype3|}}} }} }}
 
;Damage Type
 
;Damage Type
:{{{mobdamagetype3|}}}}}
+
:{{{mobdamagetype3|}}}
 +
}}
  
{{#if: {{{mobdamageaverage|}}}|{{#set:Average Melee Damage = {{{mobdamageaverage|}}}}}}}
+
{{#if: {{{mobdamageaverage|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Average Melee Damage = {{{mobdamageaverage|}}} }} }}
 +
}}
  
 
<!-- New melee starting from Beta 18 -->
 
<!-- New melee starting from Beta 18 -->
 
+
{{#ifeq: {{lc:{{{mode|}}}}} | melee |
 +
  {{#if: {{#var:setProperty}} | {{#set:Mode = {{{mode|}}} }} }}
 +
;Mode
 +
:{{{mode|}}}
 +
}}
  
 
{{#if: {{{meleeattack1dmg|}}}{{{meleeattack1type|}}}{{{meleeattack1part|}}}{{{meleeattack1cool|}}}|
 
{{#if: {{{meleeattack1dmg|}}}{{{meleeattack1type|}}}{{{meleeattack1part|}}}{{{meleeattack1cool|}}}|
   {{#set:Attack 1 Damage = {{{meleeattack1dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Damage = {{{meleeattack1dmg|}}} }} }}
   {{#set:Attack 1 Type = {{{meleeattack1type|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Type = {{ucfirst:{{{meleeattack1type|}}} }} }} }}
   {{#set:Attack 1 Part = {{{meleeattack1part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Part = {{{meleeattack1part|}}} }} }}
   {{#set:Attack 1 Cooldown = {{{meleeattack1cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 Cooldown = {{{meleeattack1cool|}}} }} }}
   {{#set:Attack 1 AP = {{{meleeattack1ap|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 1 AP = {{{meleeattack1ap|}}} }} }}
 
   {{#vardefine: MeleeAttack1DPS | {{#expr: {{{meleeattack1dmg|}}} / ({{{meleeattack1cool}}}) }} }}
 
   {{#vardefine: MeleeAttack1DPS | {{#expr: {{{meleeattack1dmg|}}} / ({{{meleeattack1cool}}}) }} }}
 
   {{#vardefine: MeleeAttack1Chance | {{#expr: {{{meleeattack1dmg|}}} ^ 2 }} }}
 
   {{#vardefine: MeleeAttack1Chance | {{#expr: {{{meleeattack1dmg|}}} ^ 2 }} }}
 
;Melee Attack{{#if: {{{meleeattack1dmg|}}}|&nbsp;1}}
 
;Melee Attack{{#if: {{{meleeattack1dmg|}}}|&nbsp;1}}
:{{{meleeattack1part|Body part?}}}<br>{{{meleeattack1dmg|?}}} dmg ({{{meleeattack1type|type?}}})<br>{{{meleeattack1cool|0}}} seconds cooldown <br>{{{meleeattack1ap|0}}}% armor penetration}}
+
:{{{meleeattack1part|Body part?}}}<br>{{{meleeattack1dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{meleeattack1type|}}}}}|{{ucfirst:{{{meleeattack1type|type?}}}}}]])<br>{{{meleeattack1cool|0}}} seconds cooldown <br>{{{meleeattack1ap|0}}}% armor penetration}}
  
 
{{#if: {{{meleeattack2dmg|}}}{{{meleeattack2type|}}}{{{meleeattack2part|}}}{{{meleeattack2cool|}}}|
 
{{#if: {{{meleeattack2dmg|}}}{{{meleeattack2type|}}}{{{meleeattack2part|}}}{{{meleeattack2cool|}}}|
   {{#set:Attack 2 Damage = {{{meleeattack2dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Damage = {{{meleeattack2dmg|}}} }} }}
   {{#set:Attack 2 Type = {{{meleeattack2type|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Type = {{ucfirst:{{{meleeattack2type|}}} }} }} }}
   {{#set:Attack 2 Part = {{{meleeattack2part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Part = {{{meleeattack2part|}}} }} }}
   {{#set:Attack 2 Cooldown = {{{meleeattack2cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 Cooldown = {{{meleeattack2cool|}}} }} }}
   {{#set:Attack 2 AP = {{{meleeattack2ap|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 2 AP = {{{meleeattack2ap|}}} }} }}
 
   {{#vardefine: MeleeAttack2DPS | {{#expr: {{{meleeattack2dmg|}}} / ({{{meleeattack2cool}}}) }} }}
 
   {{#vardefine: MeleeAttack2DPS | {{#expr: {{{meleeattack2dmg|}}} / ({{{meleeattack2cool}}}) }} }}
 
   {{#vardefine: MeleeAttack2Chance | {{#expr: {{{meleeattack2dmg|}}} ^ 2 }} }}
 
   {{#vardefine: MeleeAttack2Chance | {{#expr: {{{meleeattack2dmg|}}} ^ 2 }} }}
 
;Melee Attack 2{{#if: {{{meleeattack2dmg|}}}|&nbsp;}}
 
;Melee Attack 2{{#if: {{{meleeattack2dmg|}}}|&nbsp;}}
:{{{meleeattack2part|Body part?}}}<br>{{{meleeattack2dmg|?}}} dmg ({{{meleeattack2type|type?}}})<br>{{{meleeattack2cool|0}}} seconds cooldown <br>{{{meleeattack2ap|0}}}% armor penetration}}
+
:{{{meleeattack2part|Body part?}}}<br>{{{meleeattack2dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{meleeattack2type|}}}}}|{{ucfirst:{{{meleeattack2type|type?}}}}}]])<br>{{{meleeattack2cool|0}}} seconds cooldown <br>{{{meleeattack2ap|0}}}% armor penetration}}
  
 
{{#if: {{{meleeattack3dmg|}}}{{{meleeattack3type|}}}{{{meleeattack3part|}}}{{{meleeattack3cool|}}}|
 
{{#if: {{{meleeattack3dmg|}}}{{{meleeattack3type|}}}{{{meleeattack3part|}}}{{{meleeattack3cool|}}}|
   {{#set:Attack 3 Damage = {{{meleeattack3dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Damage = {{{meleeattack3dmg|}}} }} }}
   {{#set:Attack 3 Type = {{{meleeattack3type|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Type = {{ucfirst:{{{meleeattack3type|}}} }} }} }}
   {{#set:Attack 3 Part = {{{meleeattack3part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Part = {{{meleeattack3part|}}} }} }}
   {{#set:Attack 3 Cooldown = {{{meleeattack3cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 Cooldown = {{{meleeattack3cool|}}} }} }}
   {{#set:Attack 3 AP = {{{meleeattack3ap|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 3 AP = {{{meleeattack3ap|}}} }} }}
 
   {{#vardefine: MeleeAttack3DPS | {{#expr: {{{meleeattack3dmg|}}} / ({{{meleeattack3cool}}}) }} }}
 
   {{#vardefine: MeleeAttack3DPS | {{#expr: {{{meleeattack3dmg|}}} / ({{{meleeattack3cool}}}) }} }}
 
   {{#vardefine: MeleeAttack3Chance | {{#expr: {{{meleeattack3dmg|}}} ^ 2 }} }}
 
   {{#vardefine: MeleeAttack3Chance | {{#expr: {{{meleeattack3dmg|}}} ^ 2 }} }}
 
;Melee Attack 3{{#if: {{{meleeattack3dmg|}}}|&nbsp;}}
 
;Melee Attack 3{{#if: {{{meleeattack3dmg|}}}|&nbsp;}}
:{{{meleeattack3part|Body part?}}}<br>{{{meleeattack3dmg|?}}} dmg ({{{meleeattack3type|type?}}})<br>{{{meleeattack3cool|0}}} seconds cooldown <br>{{{meleeattack3ap|0}}}% armor penetration}}
+
:{{{meleeattack3part|Body part?}}}<br>{{{meleeattack3dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{meleeattack3type|}}}}}|{{ucfirst:{{{meleeattack3type|type?}}}}}]])<br>{{{meleeattack3cool|0}}} seconds cooldown <br>{{{meleeattack3ap|0}}}% armor penetration}}
  
 
{{#if: {{{meleeattack4dmg|}}}{{{meleeattack4type|}}}{{{meleeattack4part|}}}{{{meleeattack4cool|}}}|
 
{{#if: {{{meleeattack4dmg|}}}{{{meleeattack4type|}}}{{{meleeattack4part|}}}{{{meleeattack4cool|}}}|
   {{#set:Attack 4 Damage = {{{meleeattack4dmg|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Damage = {{{meleeattack4dmg|}}} }} }}
   {{#set:Attack 4 Type = {{{meleeattack4type|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Type = {{ucfirst:{{{meleeattack4type|}}} }} }} }}
   {{#set:Attack 4 Part = {{{meleeattack4part|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Part = {{{meleeattack4part|}}} }} }}
   {{#set:Attack 4 Cooldown = {{{meleeattack4cool|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 Cooldown = {{{meleeattack4cool|}}} }} }}
   {{#set:Attack 4 AP = {{{meleeattack4ap|}}} }}
+
   {{#if: {{#var:setProperty}} | {{#set:Attack 4 AP = {{{meleeattack4ap|}}} }} }}
 
   {{#vardefine: MeleeAttack4DPS | {{#expr: {{{meleeattack4dmg|}}} / ({{{meleeattack4cool}}}) }} }}
 
   {{#vardefine: MeleeAttack4DPS | {{#expr: {{{meleeattack4dmg|}}} / ({{{meleeattack4cool}}}) }} }}
 
   {{#vardefine: MeleeAttack4Chance | {{#expr: {{{meleeattack4dmg|}}} ^ 2 }} }}
 
   {{#vardefine: MeleeAttack4Chance | {{#expr: {{{meleeattack4dmg|}}} ^ 2 }} }}
 
;Melee Attack 4{{#if: {{{meleeattack3dmg|}}}|&nbsp;}}
 
;Melee Attack 4{{#if: {{{meleeattack3dmg|}}}|&nbsp;}}
:{{{meleeattack4part|Body part?}}}<br>{{{meleeattack4dmg|?}}} dmg ({{{meleeattack4type|type?}}})<br>{{{meleeattack4cool|0}}} seconds cooldown <br>{{{meleeattack4ap|0}}}% armor penetration}}
+
:{{{meleeattack4part|Body part?}}}<br>{{{meleeattack4dmg|?}}} dmg ([[Damage Types#{{ucfirst:{{{meleeattack4type|}}}}}|{{ucfirst:{{{meleeattack4type|type?}}}}}]])<br>{{{meleeattack4cool|0}}} seconds cooldown <br>{{{meleeattack4ap|0}}}% armor penetration}}
  
  
{{#if: {{{MeleeWeaponAverageDPS|}}}|{{#set:MeleeDPS= {{{MeleeWeaponAverageDPS|}}} }}
+
{{#if: {{{MeleeWeaponAverageDPS|}}} |
;Melee Average DPS
+
  {{#if: {{#var:setProperty}} | {{#set: MeleeDPS = {{{MeleeWeaponAverageDPS|}}} }} }}
:{{{MeleeWeaponAverageDPS|}}} }}
+
;Melee Average {{DPS}}
 +
:{{{MeleeWeaponAverageDPS|}}}
 +
}}
  
{{#if: {{{MeleeWeaponAverageAP|}}}|{{#set:MeleeAP= {{{MeleeWeaponAverageAP|}}} }}
+
{{#if: {{{MeleeWeaponAverageAP|}}} |
;Melee Average AP
+
  {{#if: {{#var:setProperty}} | {{#set: MeleeAP = {{{MeleeWeaponAverageAP|}}} }} }}
:{{{MeleeWeaponAverageAP|}}}%}}
+
;Melee Average {{AP}}
 +
:{{{MeleeWeaponAverageAP|}}}%
 +
}}
  
  
<!-- was supposed to calculate stuff but then decided it's just better to use the value provided by the game  
+
<!-- was supposed to calculate stuff but then decided it's just better to use the value provided by the game
  
 
{{#ifeq: {{#varexists: MeleeAttack3Chance}}|1|
 
{{#ifeq: {{#varexists: MeleeAttack3Chance}}|1|
Line 654: Line 1,362:
 
       {{#vardefine: MeleeWeaponAverageDPS | {{#expr: ({{#var: MeleeAttack1DPS}} * {{#var: MeleeAttack1Chance}} + {{#var: meleeattack2dmg}} * {{#var: MeleeAttack2Chance}} ) / {{#var: TotalChance}} }} }}|
 
       {{#vardefine: MeleeWeaponAverageDPS | {{#expr: ({{#var: MeleeAttack1DPS}} * {{#var: MeleeAttack1Chance}} + {{#var: meleeattack2dmg}} * {{#var: MeleeAttack2Chance}} ) / {{#var: TotalChance}} }} }}|
 
       {{#ifeq: {{#varexists: MeleeAttack1DPS}}|1|
 
       {{#ifeq: {{#varexists: MeleeAttack1DPS}}|1|
         {{#vardefine: MeleeWeaponAverageDPS | {{#expr: {{#var: MeleeAttack1DPS}} }} }} }} }} }}  
+
         {{#vardefine: MeleeWeaponAverageDPS | {{#expr: {{#var: MeleeAttack1DPS}} }} }} }} }} }}
  
 
  ---------- Line to separate the mess above from the other stuff below ---------- -->
 
  ---------- Line to separate the mess above from the other stuff below ---------- -->
  
{{#IF: {{{work to make|}}} {{{resources to make|}}} {{{stuff tags|}}} {{{deconstruct yield|}}} {{{resource 1|}}} {{{resource 2|}}}{{{resource 3|}}} {{{resource 4|}}} {{{resource 5|}}} {{{resource 6|}}} {{{resource 1 amount|}}} {{{resource 2 amount|}}} {{{resource 3 amount|}}} {{{resource 4 amount|}}} {{{resource 5 amount|}}} {{{resource 6 amount|}}} |
+
<!--- Creation --->
 +
{{#if: {{{research|}}} {{{production facility 1|}}} {{{work to make|}}} {{{resources to make|}}} {{{stuff tags|}}} {{{deconstruct yield|}}} {{{resource 1|}}} {{{resource 2|}}}{{{resource 3|}}} {{{resource 4|}}} {{{resource 5|}}} {{{resource 6|}}} {{{resource 1 amount|}}} {{{resource 2 amount|}}} {{{resource 3 amount|}}} {{{resource 4 amount|}}} {{{resource 5 amount|}}} {{{resource 6 amount|}}} {{{product amount|}}} |
 
</dl>{{clear}}
 
</dl>{{clear}}
 
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Creation'''</p>
 
<p class='subheading' style='height: 1.75em !important; padding: 0.25em 0 0.5em !important; margin: 0.5em 0 0.5em !important'>'''Creation'''</p>
Line 664: Line 1,373:
 
}}
 
}}
  
<!-- Work to make should be specified in *ticks*, like in the game files.  This has been inconsistent in the past -->
+
{{#if: {{{production facility 1|}}}|{{#if: {{#var:setProperty}} | {{#set: Production Facility 1 = {{{production facility 1|}}} }} }} }}
{{#if: {{{work to make|}}}|{{#set:Work To Make = {{{work to make|}}} }}
+
{{#if: {{{production facility 2|}}}|{{#if: {{#var:setProperty}} | {{#set: Production Facility 2 = {{{production facility 2|}}} }} }} }}
;Work To Make
+
{{#if: {{{production facility 3|}}}|{{#if: {{#var:setProperty}} | {{#set: Production Facility 3 = {{{production facility 3|}}} }} }} }}
:{{ticks|{{{work to make|}}}}}
+
{{#if: {{{production facility 4|}}}|{{#if: {{#var:setProperty}} | {{#set: Production Facility 4 = {{{production facility 4|}}} }} }} }}
 +
{{#if: {{{production facility 1|}}}|
 +
;Crafted At
 +
:{{#if:{{{production facility 1|}}}|{{Icon Small|{{{production facility 1|}}}|{{#switch:{{lc:{{{production facility 1|}}}}}|crafting spot|campfire|fermenting barrel|nutrient paste dispenser=16|#default=32}}}}}}{{#if:{{{production facility 2|}}}|/{{Icon Small|{{{production facility 2|}}}|{{#switch:{{lc:{{{production facility 2|}}}}}|crafting spot|campfire|fermenting barrel|nutrient paste dispenser=16|#default=32}}}}}}{{#if:{{{production facility 3|}}}|/{{Icon Small|{{{production facility 3|}}}|{{#switch:{{lc:{{{production facility 3|}}}}}|crafting spot|campfire|fermenting barrel|nutrient paste dispenser=16|#default=32}}}}}}{{#if:{{{production facility 4|}}}|/{{Icon Small|{{{production facility 4|}}}|{{#switch:{{lc:{{{production facility 4|}}}}}|crafting spot|campfire|fermenting barrel|nutrient paste dispenser=16|#default=32}}}}}}
 +
}}
 +
 
 +
{{#if: {{{research|}}}| {{#vardefine: research1|{{ucfirst:{{#explode:{{{research|}}}|,|0}} }} }} {{#vardefine: research2|{{ucfirst:{{#explode:{{{research|}}}|,|1}} }} }} {{#vardefine: research3|{{ucfirst:{{#explode:{{{research|}}}|,|2}} }} }} {{#vardefine: research4|{{ucfirst:{{#explode:{{{research|}}}|,|3}} }} }} {{#vardefine: research5|{{ucfirst:{{#explode:{{{research|}}}|,|4}} }} }}
 +
{{#if: {{#var:setProperty}} | {{#set:
 +
Required Research = {{#var: research1}}
 +
|Required Research = {{#var: research2}}
 +
|Required Research = {{#var: research3}}
 +
|Required Research = {{#var: research4}}
 +
|Required Research = {{#var: research5}}
 +
}} }}
 +
;Required Research
 +
:[[Research#{{#var: research1}}|{{#var: research1}}]] {{#if: {{#pos:artificial metabolism,brain wiring,cataphract armor,circadian influence,compact weaponry,flesh shaping,healing factors,jump packs,molecular analysis,neural computation,poison synthesis,specialized limbs,skin hardening |{{lc:{{#var: research1}}}} }} | {{Icon Small|Techprint|16}}}}<!--
 +
 
 +
-->{{#if:{{#var: research2}}|, [[Research#{{#var: research2}}|{{#var: research2}}]] {{#if: {{#pos:artificial metabolism,brain wiring,cataphract armor,circadian influence,compact weaponry,flesh shaping,healing factors,jump packs,molecular analysis,neural computation,poison synthesis,specialized limbs,skin hardening |{{lc:{{#var: research2}}}} }} | {{Icon Small|Techprint|16}}}} }}<!--
 +
 
 +
-->{{#if:{{#var: research3}}|, [[Research#{{#var: research3}}|{{#var: research3}}]] {{#if: {{#pos:artificial metabolism,brain wiring,cataphract armor,circadian influence,compact weaponry,flesh shaping,healing factors,jump packs,molecular analysis,neural computation,poison synthesis,specialized limbs,skin hardening |{{lc:{{#var: research3}}}} }} | {{Icon Small|Techprint|16}}}} }}<!--
 +
 
 +
-->{{#if:{{#var: research4}}|, [[Research#{{#var: research4}}|{{#var: research4}}]] {{#if: {{#pos:artificial metabolism,brain wiring,cataphract armor,circadian influence,compact weaponry,flesh shaping,healing factors,jump packs,molecular analysis,neural computation,poison synthesis,specialized limbs,skin hardening |{{lc:{{#var: research4}}}} }} | {{Icon Small|Techprint|16}}}} }}<!--
 +
 
 +
-->{{#if:{{#var: research5}}|, [[Research#{{#var: research5}}|{{#var: research5}}]] {{#if: {{#pos:artificial metabolism,brain wiring,cataphract armor,circadian influence,compact weaponry,flesh shaping,healing factors,jump packs,molecular analysis,neural computation,poison synthesis,specialized limbs,skin hardening |{{lc:{{#var: research5}}}} }} | {{Icon Small|Techprint|16}}}} }}
 +
}}
 +
 
 +
{{#if: {{{skill 1|}}}|{{#if: {{#var:setProperty}} | {{#set:Skill 1 = {{ucfirst:{{{skill 1|}}}}} }} }}}}
 +
{{#if: {{{skill 2|}}}|{{#if: {{#var:setProperty}} | {{#set:Skill 2 = {{ucfirst:{{{skill 2|}}}}} }} }}}}
 +
{{#if: {{{skill 1 level|}}}|{{#if: {{#var:setProperty}} | {{#set:Skill 1 Level = {{{skill 1 level|}}} }} }}}}
 +
{{#if: {{{skill 2 level|}}}|{{#if: {{#var:setProperty}} | {{#set:Skill 2 Level = {{{skill 2 level|}}} }} }}}}
 +
 
 +
{{#if: {{{skill 1|}}} |
 +
;Skill{{#if:{{{skill 2|}}}|s}} Required
 +
:[[Skills#{{ucfirst:{{{skill 1|}}}}}|{{ucfirst:{{{skill 1|}}}}}]] {{{skill 1 level|}}} {{#if: {{{skill 2|}}}|& [[Skills#{{ucfirst:{{{skill 2|}}}}}|{{ucfirst:{{{skill 2|}}}}}]] {{{skill 2 level|}}} }}
 
}}
 
}}
  
{{#if: {{{resources to make|}}}|
+
<!-- Work to make should be specified in *ticks*, like in the game files. This has been inconsistent in the past -->
;Resources to make
+
{{#if: {{{work to make|}}} |
:{{{resources to make|}}} [[Category:Resource Update Needed]]
+
  {{#if: {{#var:setProperty}} | {{#set:Work To Make = {{{work to make|}}} }} }}
 +
;Work To Make
 +
:{{ticks| {{{work to make|}}} }}
 
}}
 
}}
  
{{#if: {{{stuff tags|}}}|{{#set:Stuff Tags = {{{stuff tags}}}}}
+
{{#if: {{{stuff tags|}}} |
;{{H:title|link=no|The types of resource that can be substituted for the generic resource type|Stuff tags}}
+
  {{#if: {{#var:setProperty}} | {{#set:Stuff Tags = {{{stuff tags}}}}} }}
 +
;{{Hover title|link=no|The types of resource that can be substituted for the generic resource type|Stuff tags}}
 
:{{{stuff tags|}}}
 
:{{{stuff tags|}}}
 
}}
 
}}
  
{{#if: {{{resource 1|}}}|{{#set:Resource 1 = {{{resource 1|}}} }}}}
+
{{#if: {{{resource 1|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 1 = {{{resource 1|}}} }} }} }}
{{#if: {{{resource 2|}}}|{{#set:Resource 2 = {{{resource 2|}}} }}}}
+
{{#if: {{{resource 2|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 2 = {{{resource 2|}}} }} }} }}
{{#if: {{{resource 3|}}}|{{#set:Resource 3 = {{{resource 3|}}} }}}}
+
{{#if: {{{resource 3|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 3 = {{{resource 3|}}} }} }} }}
{{#if: {{{resource 4|}}}|{{#set:Resource 4 = {{{resource 4|}}} }}}}
+
{{#if: {{{resource 4|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 4 = {{{resource 4|}}} }} }} }}
{{#if: {{{resource 5|}}}|{{#set:Resource 5 = {{{resource 5|}}} }}}}
+
{{#if: {{{resource 5|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 5 = {{{resource 5|}}} }} }} }}
{{#if: {{{resource 6|}}}|{{#set:Resource 6 = {{{resource 6|}}} }}}}
+
{{#if: {{{resource 6|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 6 = {{{resource 6|}}} }} }} }}
{{#if: {{{resource 1 amount|}}}|{{#set:Resource 1 Amount = {{{resource 1 amount|}}} }}}}
+
{{#if: {{{resource 1 type|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 1 Type = {{{resource 1 type|}}} }} }} }}
{{#if: {{{resource 2 amount|}}}|{{#set:Resource 2 Amount = {{{resource 2 amount|}}} }}}}
+
{{#if: {{{resource 2 type|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 2 Type = {{{resource 2 type|}}} }} }} }}
{{#if: {{{resource 3 amount|}}}|{{#set:Resource 3 Amount = {{{resource 3 amount|}}} }}}}
+
{{#if: {{{resource 3 type|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 3 Type = {{{resource 3 type|}}} }} }} }}
{{#if: {{{resource 4 amount|}}}|{{#set:Resource 4 Amount = {{{resource 4 amount|}}} }}}}
+
{{#if: {{{resource 4 type|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 4 Type = {{{resource 4 type|}}} }} }} }}
{{#if: {{{resource 5 amount|}}}|{{#set:Resource 5 Amount = {{{resource 5 amount|}}} }}}}
+
{{#if: {{{resource 5 type|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 5 Type = {{{resource 5 type|}}} }} }} }}
{{#if: {{{resource 6 amount|}}}|{{#set:Resource 6 Amount = {{{resource 6 amount|}}} }}}}
+
{{#if: {{{resource 6 type|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 6 Type = {{{resource 6 type|}}} }} }} }}
 +
{{#if: {{{resource 1 amount|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 1 Amount = {{{resource 1 amount|}}} }} }} }}
 +
{{#if: {{{resource 2 amount|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 2 Amount = {{{resource 2 amount|}}} }} }} }}
 +
{{#if: {{{resource 3 amount|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 3 Amount = {{{resource 3 amount|}}} }} }} }}
 +
{{#if: {{{resource 4 amount|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 4 Amount = {{{resource 4 amount|}}} }} }} }}
 +
{{#if: {{{resource 5 amount|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 5 Amount = {{{resource 5 amount|}}} }} }} }}
 +
{{#if: {{{resource 6 amount|}}}|{{#if: {{#var:setProperty}} | {{#set:Resource 6 Amount = {{{resource 6 amount|}}} }} }} }}
  
{{#if: {{{resource 1|}}}|
+
{{#if: {{{resource 1|}}}|<!--{{#ifeq: {{lc:{{{placeable|}}}}}|false||-->
 
;Resources to make
 
;Resources to make
:{{#ifeq: Stuff | {{{resource 1|}}} |{{Icon|buildingmat}}|{{Icon Small|{{{resource 1|}}}|16}}}} {{{resource 1 amount|}}} {{#if: {{{resource 2|}}}| + {{Icon Small|{{{resource 2|}}}|16}} {{{resource 2 amount|}}}|}} {{#if: {{{resource 3|}}}| + {{Icon Small|{{{resource 3|}}}|16}} {{{resource 3 amount|}}}|}}{{#if: {{{resource 4|}}}| + {{Icon Small|{{{resource 4|}}}|16}} {{{resource 4 amount|}}}|}}{{#if: {{{resource 5|}}}| + {{Icon Small|{{{resource 5|}}}|16}} {{{resource 5 amount|}}}|}}{{#if: {{{resource 6|}}}| + {{Icon Small|{{{resource 6|}}}|16}} {{{resource 6 amount|}}}|}}
+
:{{#ifeq: {{{resource 1|}}}|Nutrition|{{{resource 1 amount|}}} [[{{{resource 1|}}}]] ({{{resource 1 type|}}})|{{Icon Small|{{{resource 1|}}}|16}} {{{resource 1 amount|}}}}} {{#if: {{{resource 2|}}}| + {{#ifeq: {{{resource 2|}}}|Nutrition|{{{resource 2 amount|}}} [[{{{resource 2|}}}]] ({{{resource 2 type|}}})|{{Icon Small|{{{resource 2|}}}|16}} {{{resource 2 amount|}}}}}}} {{#if: {{{resource 3|}}}| + {{Icon Small|{{{resource 3|}}}|16}} {{{resource 3 amount|}}}|}} {{#if: {{{resource 4|}}}| + {{Icon Small|{{{resource 4|}}}|16}} {{{resource 4 amount|}}}|}} {{#if: {{{resource 5|}}}| + {{Icon Small|{{{resource 5|}}}|16}} {{{resource 5 amount|}}}|}} {{#if: {{{resource 6|}}}| + {{Icon Small|{{{resource 6|}}}|16}} {{{resource 6 amount|}}}|}}
|}}
+
<!--|}}-->
  
 
<!---If resource 1 is set to stuff, but theres no stuff tags, make note of it--->
 
<!---If resource 1 is set to stuff, but theres no stuff tags, make note of it--->
{{#ifeq: Stuff | {{{resource 1|}}} | {{#if: {{{stuff tags|}}}| |
+
{{#ifeq: Stuff | {{{resource 1|}}} | {{#if: {{{stuff tags|}}}| |
;{{H:title|link=no|The types of resource that can be substituted for the generic resource type|Stuff tags}}
+
;{{Hover title|link=no|The types of resource that can be substituted for the generic resource type|Stuff tags}}
 
:<span style="color:red">'''ERROR: NO STUFF TAGS'''</span>
 
:<span style="color:red">'''ERROR: NO STUFF TAGS'''</span>
}}
+
}}
|}}  
+
|}}
 +
}}
 +
 
 +
{{#if: {{{product amount|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set:Product Amount = {{{product amount|}}} }} }}
 +
;{{Hover title|link=no|The amount of this item produced from the required resources|Product Amount}}
 +
:{{Icon Small| {{#var:Name}} | 16 }} {{{product amount|}}}
 +
}}
  
 
{{#if: {{{deconstruct yield|}}}|
 
{{#if: {{{deconstruct yield|}}}|
;{{H:title|link=no|Resources recovered when deconstructing|Deconstruct yield}}
+
;{{Hover title| link=no | Resources recovered when deconstructing. | Deconstruct yield }}
:{{{deconstruct yield|}}}
+
:{{{deconstruct yield|}}}|
 +
<!-- if resource 1 != None and type = Building and deconstructable != false and deconstructyieldfraction|0.5 > 0 NON-EXCLUSIVE OR if deconstruct yield fraction set above 0 manually OR set to deconstructable true
 +
-->{{#ifexpr:{{#if: {{{resource 1|}}}|1|0}}*{{#ifeq:{{{type|}}}|Building|1|0}}*{{#ifeq:{{lc:{{{deconstructable|}}}}}|false|0|1}}*{{#ifexpr: {{{deconstructyieldfraction|0.5}}} > 0|1|0}} + {{#ifexpr: {{{deconstructyieldfraction|-1}}} > 0|1|0}} + {{#ifeq:{{lc:{{{deconstructable|}}}}}|true|1|0}} > 0|
 +
;{{Hover title|link=no|Resources recovered when deconstructing.|Deconstruct yield}}
 +
:{{Icon Small|{{{resource 1|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 1 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} | {{#expr: floor({{{resource 1 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }}|{{#expr: {{{resource 1 amount|}}}*{{{deconstructyieldfraction|0.5}}} }}|{{#expr: floor({{{resource 1 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} - {{#expr: ceil({{{resource 1 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} }} <!--
 +
-->{{#if: {{{resource 2|}}}| + {{Icon Small|{{{resource 2|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 2 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} | {{#expr: floor({{{resource 2 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }}|{{#expr: {{{resource 2 amount|}}}*{{{deconstructyieldfraction|0.5}}} }}|{{#expr: floor({{{resource 2 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} - {{#expr: ceil({{{resource 2 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} }}|}} <!--
 +
-->{{#if: {{{resource 3|}}}| + {{Icon Small|{{{resource 3|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 3 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} | {{#expr: floor({{{resource 3 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }}|{{#expr: {{{resource 3 amount|}}}*{{{deconstructyieldfraction|0.5}}} }}|{{#expr: floor({{{resource 3 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} - {{#expr: ceil({{{resource 3 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} }}|}} <!--
 +
-->{{#if: {{{resource 4|}}}| + {{Icon Small|{{{resource 4|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 4 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} | {{#expr: floor({{{resource 4 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }}|{{#expr: {{{resource 4 amount|}}}*{{{deconstructyieldfraction|0.5}}} }}|{{#expr: floor({{{resource 4 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} - {{#expr: ceil({{{resource 4 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} }}|}} <!--
 +
-->{{#if: {{{resource 5|}}}| + {{Icon Small|{{{resource 5|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 5 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} | {{#expr: floor({{{resource 5 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }}|{{#expr: {{{resource 5 amount|}}}*{{{deconstructyieldfraction|0.5}}} }}|{{#expr: floor({{{resource 5 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} - {{#expr: ceil({{{resource 5 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} }}|}} <!--
 +
-->{{#if: {{{resource 6|}}}| + {{Icon Small|{{{resource 6|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 6 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} | {{#expr: floor({{{resource 6 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }}|{{#expr: {{{resource 6 amount|}}}*{{{deconstructyieldfraction|0.5}}} }}|{{#expr: floor({{{resource 6 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} - {{#expr: ceil({{{resource 6 amount|}}}*{{{deconstructyieldfraction|0.5}}}) }} }}|}}
 +
|}}
 
}}
 
}}
  
{{#if: {{{page verified for version|}}}|{{Verified|{{{page verified for version|}}}}}| {{Verified}} }}
+
{{#if:{{{destroyyield|}}} |
 +
;{{Hover title| link=no | Resources recovered when destroyed. | Destroy yield }}
 +
:{{{destroyyield|}}}<!--Uses destroyyield if it's set. leavesresourceswhendestroyed and bonusdestroyleavings are to be phased out.
 +
-->|{{#ifeq:{{{type|}}}|Building|<!--If leavesresourceswhendestroyed != false and resource 1 != None or if bonusdestroyleavings != None: write the title
 +
-->{{#ifexpr: {{#ifeq:{{lc:{{{leavesresourceswhendestroyed|}}}}}|false|0|1}}*{{#if:{{{resource 1|}}}|1|0}} + {{#if:{{{bonusdestroyleavings|}}}|1|0}} > 0|
 +
;{{Hover title|link=no|Resources recovered when destroyed.|Destroy yield}}
 +
:{{#ifexpr: {{#ifeq:{{lc:{{{leavesresourceswhendestroyed|}}}}}|false|0|1}}*{{#if:{{{resource 1|}}}|1|0}} = 1|<!--If leavesresourceswhendestroyed != false and resource 1 != None: list out resources*0.25
 +
-->{{#if: {{{resource 1|}}}| {{Icon Small|{{{resource 1|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 1 amount|}}}*0.25) }} | {{#expr: floor({{{resource 1 amount|}}}*0.25) }}|{{#expr: {{{resource 1 amount|}}}*0.25 }}|{{#expr: floor({{{resource 1 amount|}}}*0.25) }} - {{#expr: ceil({{{resource 1 amount|}}}*0.25) }} }}|}} <!--
 +
-->{{#if: {{{resource 2|}}}| + {{Icon Small|{{{resource 2|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 2 amount|}}}*0.25) }} | {{#expr: floor({{{resource 2 amount|}}}*0.25) }}|{{#expr: {{{resource 2 amount|}}}*0.25 }}|{{#expr: floor({{{resource 2 amount|}}}*0.25) }} - {{#expr: ceil({{{resource 2 amount|}}}*0.25) }} }}|}} <!--
 +
-->{{#if: {{{resource 3|}}}| + {{Icon Small|{{{resource 3|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 3 amount|}}}*0.25) }} | {{#expr: floor({{{resource 3 amount|}}}*0.25) }}|{{#expr: {{{resource 3 amount|}}}*0.25 }}|{{#expr: floor({{{resource 3 amount|}}}*0.25) }} - {{#expr: ceil({{{resource 3 amount|}}}*0.25) }} }}|}} <!--
 +
-->{{#if: {{{resource 4|}}}| + {{Icon Small|{{{resource 4|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 4 amount|}}}*0.25) }} | {{#expr: floor({{{resource 4 amount|}}}*0.25) }}|{{#expr: {{{resource 4 amount|}}}*0.25 }}|{{#expr: floor({{{resource 4 amount|}}}*0.25) }} - {{#expr: ceil({{{resource 4 amount|}}}*0.25) }} }}|}} <!--
 +
-->{{#if: {{{resource 5|}}}| + {{Icon Small|{{{resource 5|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 5 amount|}}}*0.25) }} | {{#expr: floor({{{resource 5 amount|}}}*0.25) }}|{{#expr: {{{resource 5 amount|}}}*0.25 }}|{{#expr: floor({{{resource 5 amount|}}}*0.25) }} - {{#expr: ceil({{{resource 5 amount|}}}*0.25) }} }}|}} <!--
 +
-->{{#if: {{{resource 6|}}}| + {{Icon Small|{{{resource 6|}}}|16}} {{#ifeq: {{#expr: ceil({{{resource 6 amount|}}}*0.25) }} | {{#expr: floor({{{resource 6 amount|}}}*0.25) }}|{{#expr: {{{resource 6 amount|}}}*0.25 }}|{{#expr: floor({{{resource 6 amount|}}}*0.25) }} - {{#expr: ceil({{{resource 6 amount|}}}*0.25) }} }}|}}<!--
 +
-->|}}<!--
 +
-->{{#ifexpr:{{#ifeq:{{lc:{{{leavesresourceswhendestroyed|}}}}}|false|0|1}}*{{#if:{{{resource 1|}}}|1|0}}*{{#if:{{{bonusdestroyleavings|}}}|1|0}} = 1| + }}<!--If leavesresourceswhendestroyed != false and resource 1 != None and bonusdestroyleavings != None: write " + "
 +
-->{{#if:{{{bonusdestroyleavings|}}}|{{{bonusdestroyleavings|}}}}}<!--If bonusdestroyleavings != None, write bonusdestroyleavings (should be given in format: <amount> {{Icon Small|<resource>}})
 +
-->|}}<!--
 +
-->|}}<!--
 +
-->}}
  
 +
<!-- TECHNICAL -->
 +
{{#if: {{#var:setProperty}}|{{#if: {{{page verified for version|}}}|{{Verified|{{{page verified for version|}}}}}| {{Verified}} }}}}
  
 +
{{#if: {{{defName|}}} {{{color|}}} {{{thingCategories|}}} {{{file|}}} {{{weaponTags|}}} {{{thingSetMakerTags|}}} {{{defaultOutfitTags|}}} {{{factionPrerequisiteTags|}}} {{{harvestTag|}}} {{{recipePrerequisiteTags|}}} {{{ResearchProjectTagDef|}}} {{{sowTag|}}} {{{sowTags|}}} {{{tag|}}} {{{tags|}}} {{{techHediffsTags|}}} {{{thingSetMakerTagsToAllow|}}} {{{thingSetMakerTagsToDisallow|}}} {{{tradeTag|}}} {{{tradeTags|}}} {{{tradeTagsBuy|}}} {{{tradeTagsSell|}}} {{{tradeTagsToAllow|}}} {{{tutorHighlightTag|}}} {{{apparelTags|}}} {{{buildingTags|}}} {{{stuff adjective|}}} {{{small volume|}}} {{{preferability|}}} {{{food preference|}}} {{{drug category|}}} {{{is pleasure drug|}}} {{{work efficiency factor|}}} {{{work efficiency offset|}}} {{{max simultaneous facilities|}}} {{{unpowered work speed factor|}}} {{{bulk product amount|}}}|
 +
</dl>{{clear}}
 +
<div class="subheading mw-customtoggle-myDivision" style='height: 1.75em !important; padding: 0.25em 0em 0.25em !important; margin: 0.5em 0 0.5em !important; width:300px'> '''Technical'''
 +
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myDivision"> <span style='color: #504f54; text-align: left; text-shadow: 0px 0px; font-family: Arial; font-size: 0.8em; height: 0em !important; padding: 0em 0em 0em !important; margin: 0em 0 0em !important;'>
 +
{{#if: {{{defName|}}}|
 +
; defName
 +
: {{{defName|}}}
 +
}}<!--
 +
-->{{#if: {{{color|}}} |{{#if: {{#var:setProperty}} | {{#set: color = {{{color|}}}}} }}
 +
;color
 +
:{{{color|}}}
 +
}}<!--
 +
-->{{#if: {{{file|}}}|
 +
; File
 +
: {{{file|}}}
 +
}}<!--
 +
-->{{#if: {{{thingCategories|}}}|
 +
; thingCategories
 +
: {{{thingCategories|}}}
 +
}}<!--
 +
-->{{#if: {{{weaponTags|}}}|{{#if: {{#var:setProperty}} | {{#set:
 +
weaponTags = {{ucfirst:{{#explode:{{{weaponTags|}}}|,|0}} }}
 +
|weaponTags = {{ucfirst:{{#explode:{{{weaponTags|}}}|,|1}} }}
 +
|weaponTags = {{ucfirst:{{#explode:{{{weaponTags|}}}|,|2}} }}
 +
|weaponTags = {{ucfirst:{{#explode:{{{weaponTags|}}}|,|3}} }}
 +
|weaponTags = {{ucfirst:{{#explode:{{{weaponTags|}}}|,|4}} }}
 +
}} }}
 +
; weaponTags
 +
: {{{weaponTags|}}}
 +
}}<!--
 +
-->{{#if: {{{thingSetMakerTags|}}} |
 +
; thingSetMakerTags
 +
: {{{thingSetMakerTags|}}}
 +
}}<!--
 +
-->{{#if: {{{defaultOutfitTags|}}} |
 +
; defaultOutfitTags
 +
: {{{defaultOutfitTags|}}}
 +
}}<!--
 +
-->{{#if: {{{factionPrerequisiteTags|}}} |
 +
; factionPrerequisiteTags
 +
: {{{factionPrerequisiteTags|}}}
 +
}}<!--
 +
-->{{#if: {{{harvestTag|}}} |
 +
; harvestTag
 +
: {{{harvestTag|}}}
 +
}}<!--
 +
-->{{#if: {{{recipePrerequisiteTags|}}} |
 +
;recipePrerequisiteTags
 +
: {{{recipePrerequisiteTags|}}}
 +
}}<!--
 +
-->{{#if: {{{ResearchProjectTagDef|}}} |
 +
;ResearchProjectTagDef
 +
:{{{ResearchProjectTagDef|}}}
 +
}}<!--
 +
-->{{#if: {{{sowTag|}}} |{{#if: {{#var:setProperty}} | {{#set: sowTag = {{{sowTag|}}}}} }}
 +
;sowTag
 +
:{{{sowTag|}}}
 +
}}<!--
 +
-->{{#if: {{{sowTags|}}} |{{#if: {{#var:setProperty}} | {{#set: sowTags = {{{sowTags|}}}}} }}
 +
;sowTags
 +
:{{{sowTags|}}}
 +
}}<!--
 +
-->{{#if: {{{tag|}}} |{{#if: {{#var:setProperty}} | {{#set:
 +
tag = {{ucfirst:{{#explode:{{{tag|}}}|,|0}} }}
 +
|tag = {{ucfirst:{{#explode:{{{tag|}}}|,|1}} }}
 +
|tag = {{ucfirst:{{#explode:{{{tag|}}}|,|2}} }}
 +
|tag = {{ucfirst:{{#explode:{{{tag|}}}|,|3}} }}
 +
|tag = {{ucfirst:{{#explode:{{{tag|}}}|,|4}} }}
 +
}} }}
 +
;tag
 +
:{{{tag|}}}
 +
}}<!--
 +
-->{{#if: {{{tags|}}} |{{#if: {{#var:setProperty}} | {{#set:
 +
tags = {{ucfirst:{{#explode:{{{tags|}}}|,|0}} }}
 +
|tags = {{ucfirst:{{#explode:{{{tags|}}}|,|1}} }}
 +
|tags = {{ucfirst:{{#explode:{{{tags|}}}|,|2}} }}
 +
|tags = {{ucfirst:{{#explode:{{{tags|}}}|,|3}} }}
 +
|tags = {{ucfirst:{{#explode:{{{tags|}}}|,|4}} }}
 +
}} }}
 +
;tags
 +
:{{{tags|}}}
 +
}}<!--
 +
-->{{#if: {{{techHediffsTags|}}} |{{#if: {{#var:setProperty}} | {{#set:
 +
techHediffsTags = {{ucfirst:{{#explode:{{{techHediffsTags|}}}|,|0}} }}
 +
|techHediffsTags = {{ucfirst:{{#explode:{{{techHediffsTags|}}}|,|1}} }}
 +
|techHediffsTags = {{ucfirst:{{#explode:{{{techHediffsTags|}}}|,|2}} }}
 +
|techHediffsTags = {{ucfirst:{{#explode:{{{techHediffsTags|}}}|,|3}} }}
 +
|techHediffsTags = {{ucfirst:{{#explode:{{{techHediffsTags|}}}|,|4}} }}
 +
}} }}
 +
;techHediffsTags
 +
:{{{techHediffsTags|}}}
 +
}}<!--
 +
-->{{#if: {{{thingSetMakerTagsToAllow|}}} |
 +
;thingSetMakerTagsToAllow
 +
:{{{thingSetMakerTagsToAllow|}}}
 +
}}<!--
 +
-->{{#if: {{{thingSetMakerTagsToDisallow|}}} |
 +
;thingSetMakerTagsToDisallow
 +
:{{{thingSetMakerTagsToDisallow|}}}
 +
}}<!--
 +
-->{{#if: {{{tradeTag|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: tradeTag = {{{tradeTag|}}} }} }}
 +
;tradeTag
 +
:{{{tradeTag|}}}
 +
}}<!--
 +
-->{{#if: {{{tradeTags|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: tradeTags = {{{tradeTags|}}} }} }}
 +
;tradeTags
 +
:{{{tradeTags|}}}
 +
}}<!--
 +
-->{{#if: {{{tradeTagsBuy|}}} |
 +
;tradeTagsBuy
 +
:{{{tradeTagsBuy|}}}
 +
}}<!--
 +
-->{{#if: {{{tradeTagsSell|}}} |
 +
;tradeTagsSell
 +
:{{{tradeTagsSell|}}}
 +
}}<!--
 +
-->{{#if: {{{tradeTagsToAllow|}}} |
 +
;tradeTagsToAllow
 +
:{{{tradeTagsToAllow|}}}
 +
}}<!--
 +
-->{{#if: {{{tutorHighlightTag|}}} |
 +
;tutorHighlightTag
 +
:{{{tutorHighlightTag|}}}
 +
}}<!--
 +
-->{{#if: {{{apparelTags|}}} |{{#if: {{#var:setProperty}} | {{#set:
 +
apparelTags = {{ucfirst:{{#explode:{{{apparelTags|}}}|,|0}} }}
 +
|apparelTags = {{ucfirst:{{#explode:{{{apparelTags|}}}|,|1}} }}
 +
|apparelTags = {{ucfirst:{{#explode:{{{apparelTags|}}}|,|2}} }}
 +
|apparelTags = {{ucfirst:{{#explode:{{{apparelTags|}}}|,|3}} }}
 +
|apparelTags = {{ucfirst:{{#explode:{{{apparelTags|}}}|,|4}} }}
 +
}} }}
 +
;apparelTags
 +
:{{{apparelTags|}}}
 +
}}<!--
 +
-->{{#if: {{{buildingTags|}}} |{{#if: {{#var:setProperty}} | {{#set:
 +
buildingTags = {{ucfirst:{{#explode:{{{buildingTags|}}}|,|0}} }}
 +
|buildingTags = {{ucfirst:{{#explode:{{{buildingTags|}}}|,|1}} }}
 +
|buildingTags = {{ucfirst:{{#explode:{{{buildingTags|}}}|,|2}} }}
 +
|buildingTags = {{ucfirst:{{#explode:{{{buildingTags|}}}|,|3}} }}
 +
|buildingTags = {{ucfirst:{{#explode:{{{buildingTags|}}}|,|4}} }}
 +
}} }}
 +
;buildingTags
 +
:{{{buildingTags|}}}
 +
}}<!--
 +
-->{{#if: {{{stuff adjective|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Stuff Adjective = {{{stuff adjective|}}} }} }}
 +
; Stuff Adjective
 +
:{{{stuff adjective|}}}
 +
}}<!--
 +
-->{{#if: {{{small volume|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Small Volume = {{{small volume|}}} }} }}
 +
; Small Volume
 +
:{{{small volume|}}}
 +
}}<!--
 +
-->{{#if: {{{preferability|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Preferability = {{{preferability|}}} }} }}
 +
; Preferability
 +
: {{{preferability|}}}
 +
}}<!--
 +
-->{{#if: {{{food preference|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Food Preference = {{{food preference|}}} }} }}
 +
; Food Preference
 +
: {{{food preference|}}}
 +
}}<!--
 +
-->{{#if: {{{drug category|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Drug Category = {{{drug category|}}} }} }}
 +
; Drug Category
 +
: {{{drug category|}}}
 +
}}<!--
 +
-->{{#if: {{{is pleasure drug|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Is Pleasure Drug = {{{is pleasure drug|}}} }} }}
 +
; Is Pleasure Drug
 +
: {{{is pleasure drug|}}}
 +
}}<!--
 +
-->{{#if: {{{bulk product amount|}}} |
 +
  {{#if: {{#var:setProperty}} | {{#set: Bulk Product Amount = {{{bulk product amount|}}} }} }}
 +
;<abbr title="The amount of this item produced by the bulk recipe">Bulk Product Amount</abbr>
 +
:{{Icon Small| {{#var:Name}} }} {{{product amount|}}}
 +
}}<!--
 +
--></span> </div> </div>}}
 
<br style="clear: both; height: 0px;" />
 
<br style="clear: both; height: 0px;" />
</dl></div></div></includeonly><noinclude>
+
</div></div></includeonly><noinclude>
 
{{documentation}}</noinclude><!-- Add categories and interwikis to the /doc subpage, not here! -->
 
{{documentation}}</noinclude><!-- Add categories and interwikis to the /doc subpage, not here! -->

Latest revision as of 10:51, 16 November 2022

Documentation icon Template documentation[view] [edit] [history] [purge]

This is a testing version of Template:Infobox main for trying out changes without breaking the site.

Example #1[edit]

Muffalo

Muffalo

"A large herding herbivore descended from buffalo and adapted for both cold and warm environments. While enraged muffalo are deadly, tamed muffalo are quite docile and can be used as pack animals.
Nobody is quite sure why they're blue - it might even be some early genetic modification test that just never got changed."

Base Stats

Type
AnimalsWild
Market Value
300 Silver

Pawn Stats

Move Speed
4.50 c/s
Health Scale
1.75
Body Size
2.1
Mass - Baby
25.2 kg
Mass - Juvenile
63 kg
Mass - Adult
126 kg
Carrying Capacity
158 kg
Filth Rate
1
Hunger Rate
1.36 Nutrition/Day
Diet
herbivorous
Life Expectancy
15
Manhunter Chance
1.3%
Trainable Intelligence
simple
Wildness
60%
Minimum Handling Skill
5
Maturity Age
0.5 years (30 days)
Comfortable Temp Range
-55 °C – 45 °C (-67 °F – 113 °F)

Production

Meat Yield
294 muffalo meat
Leather Yield
63 bluefur
Wool Amount
100 muffalo wool
Shearing Interval
25 days
Gestation Period
28 days
Offspring Per Birth
1

Melee Combat

Attack 1
head
10 dmg (Blunt)
15% AP
2.6 second cooldown
Attack 2
left hoof
10 dmg (Blunt)
15% AP
2 second cooldown
Attack 3
right hoof
10 dmg (Blunt)
15% AP
2 second cooldown
Attack 4
Teeth
10 dmg (Bite)
15% AP
2 second cooldown
Average DPS
2.92

{{infobox main/testing|animal|
|name = Muffalo
|image = Muffalo east.png
|description = Desc
|type = Animals
|type2 = Wild
|bodysize = 2.1
|healthscale = 1.75
|movespeed = 4.50
|attack1dmg = 10
|attack1type = blunt
|attack1part = head
|attack1cool = 156
|attack2dmg = 10
|attack2type = blunt
|attack2part = left hoof
|attack2cool = 120
|attack3dmg = 10
|attack3type = blunt
|attack3part = right hoof
|attack3cool = 120
|attack4dmg = 10
|attack4type = bite
|attack4part = Teeth
|attack4cool = 120
|attack4chance = 0.5
|leathername = bluefur
|leatheryield = 63
|woolname = muffalo wool
|wool = 100
|sheartime = 25
|manhunter = 0.013
|hungerrate = 0.85
|diet = herbivorous
|trainable = simple
|wildness = 0.6
|gestation = 28
|lifespan = 15
|offspring = 1
|massadult = 147
|maturityage = 0.5
|marketvalue  = 300
|livesin_aridshrubland = true
|livesin_borealforest = true
|livesin_icesheet = true
|livesin_seaice = true
|livesin_temperateforest = true
|livesin_tundra = true
|min comfortable temperature = -55
|max comfortable temperature = 45
}}