Template:Condition page: Difference between revisions

From bg3.wiki
Jump to navigation Jump to search
No edit summary
Tag: Reverted
mNo edit summary
(71 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<includeonly><div class="bg3wiki-tooltip-box"><!--Extract name and icon from the page title-->{{#lvardef: name
<includeonly>__NOTOC__<div class="bg3wiki-tooltip-box"><!--Extract name and icon from the page title-->{{#lvardef: name
| {{{name | {{#explode: {{#titleparts: {{PAGENAME}} }} | ( | 0 }} }}}
| {{{name | {{#explode: {{#titleparts: {{PAGENAME}} }} | ( | 0 }} }}}
}}{{#lvardef: page
| {{#explode: {{#titleparts: {{PAGENAME}} }} | (Condition) | 0 }}
}}{{#lvardef: icon
}}{{#lvardef: icon
| {{{icon | {{#replace: {{#lvar:name}} | : | }} Condition Icon.webp }}}
| {{{icon | {{#replace: {{#lvar:name}} | : | }} Condition Icon.webp }}}
Line 6: Line 8:
<!--backwards compat for disease-->
<!--backwards compat for disease-->
| {{#ifeq:{{{disease|}}}|yes|disease|{{{type|}}} }}
| {{#ifeq:{{{disease|}}}|yes|disease|{{{type|}}} }}
}}{{#arraydefine:types|{{#lvar:type}}|,}}{{PageSeo
 
}}<!-- Status properties --> {{#lvardef:FreezeDuration|{{#if:{{#invoke:String2|matchAny|source={{{properties}}}|FreezeDuration}}|1|}}
 
}}{{PageSeo
| title = {{PAGENAME}}
| title = {{PAGENAME}}
| image = {{#lvar:icon}}
| image = {{#lvar:icon}}
Line 12: Line 17:
}}<!--Actual display starts here-->{{NoExcerpt | {{icon| {{#lvar:icon}} |30}} '''{{#lvar:name}}''' }}
}}<!--Actual display starts here-->{{NoExcerpt | {{icon| {{#lvar:icon}} |30}} '''{{#lvar:name}}''' }}


{{{effects|}}}
{{{effects|}}} {{#if: {{{warning|}}} | <br>
{{#if: {{{grants|}}} |
<p>{{Colour|white|{{{warning}}}}}</p> }}{{#if: {{#lvar:type}} | <br>
Grants:
{{Condition type|{{#lvar:type}} }}}}{{#if:{{{honour mode|}}}|{{blank}}
{{#invoke: ParseList | main | {{{grants}}} | type = htmlList | useTemplate = SAI/fixed }}
 
}} {{#if: {{#lvar:type}} | <br>
== Honour mode ==
{{#arrayprint:types|<br>|@|{{Condition Type|@}} }}
{{{honour mode}}}}}{{#if:{{{stack id|}}}{{{status groups|}}}{{{tick type|}}}{{{stack type|}}}{{{properties|}}}|{{blank}}
}}</div><references/>
 
{{#if:{{{notes|}}}|
== Properties ==
== Notes ==
{{#if:{{{stack id|}}}|{{blank}}
{{{notes}}}
 
}}
{{SmIconLink|Info Icon.png|Stack ID}}: {{code|{{{stack id}}}}}{{Main namespace only|[[Category:Has stack ID]]}}|{{Main namespace only|[[Category:No stack ID]]}}
{{#if:{{{suppress sources|}}}||
}}{{#if: {{{status groups|}}}|{{blank}}
== Sources of {{#lvar:name}} ==
{{#arraydefine:status groups|{{{status groups|}}}|,}}
{{Condition sources|{{#lvar:name}}}}
{{SmIconLink|Plus Icon.png|Status groups}}: {{#arrayprint:status groups|,&nbsp;|@|{{SG|@}}}}{{Main namespace only|[[Category:Has status groups]]}}|{{Main namespace only|[[Category:No status groups]]}}
}}
}}{{#if: {{{tick type|}}}{{#lvar:FreezeDuration}}|{{blank}}
<!--some housekeeping:categories and cargo-->{{Main namespace only|[[Category:Conditions]]}}{{#switch: {{{this is an example|}}}
| yes =
| #default = {{#cargo_store: _table = conditions
| name = {{#lvar:name}}
| icon = {{#lvar:icon}}
| types = {{#lvar:type}}
}}
}}</includeonly><noinclude>{{documentation|content=
If the page title is {{C|Blah (Condition)}}, then you don't have to provide the {{C|name}} parameter.  Likewise, if the icon for the condition is called {{C|Blah Condition Icon.webp}} then you don't have to provide the {{C|icon}} parameter.


If a condition has multiple types, separate them with a semicolon.
{{SmIconLink|Duration Icons.png|Conditions#Duration|Loses duration}}: {{#if:{{#lvar:FreezeDuration}}|{{SP|FreezeDuration|No}}|{{#switch: {{lc:{{{tick type}}}}}
| start | start turn | startturn = start of turn
| end | end turn | endturn = end of turn
| start round | startround = start of round
| end round | endround = end of round
| none = N/A
| #default = !syntax error!
}}}}{{Main namespace only|[[Category:Has tick type]]}}|{{Main namespace only|[[Category:No tick type]]}}}}{{#if: {{{stack type|}}}|{{blank}}


<pre>
{{SmIconLink|Sort Icon.png|Conditions#Stack type|If already applied}}: {{#switch: {{lc:{{{stack type}}}}}
{{ConditionPage
| additive = add to duration
| effects =
| overwrite = replace current
| type =
| ignore = don't apply
| grants =
| none = N/A
| notes =
| #default = !syntax error!
}}
}}{{Main namespace only|[[Category:Has stack type]]}}|{{Main namespace only|[[Category:No stack type]]}}
</pre>
}}{{#if: {{{stack priority|}}}|{{blank}}


Examples:
{{SmIconLink|Empty Icon.png|Stack priority}}: {{{stack priority}}}{{Main namespace only|[[Category:Has stack priority]]}}|{{Main namespace only|[[Category:No stack priority]]}}
}}{{#if: {{{properties|}}}|{{blank}}


== Blade Ward (Condition) ==
{{SmIconLink|Options Icon.png|Status properties|More properties}}:{{#invoke:ParseList|main|{{#arraydefine:propertiesList|{{{properties|}}}|,}}{{#arrayprint:propertiesList|,|@|{{SP|@}}}}|type=htmlList}}{{Main namespace only|[[Category:Has status properties]]}}|{{Main namespace only|[[Category:No status properties]]}}}}|{{Main namespace only|[[Category:No stack ID]][[Category:No status groups]][[Category:No tick type]][[Category:No stack type]][[Category:No stack priority]][[Category:No status properties]]}}
|{{Main namespace only|[[Category:Condition pages with no properties]]}}}}
</div> {{#if: {{{grants|}}} |


{{ConditionPage
<h2> Grants: </h2>
| name = Blade Ward
| effects =
* Has [[resistance]] against {{DamageType|Bludgeoning}}, {{DamageType|Piercing}}, and {{DamageType|Slashing}} damage dealt by weapon attacks. Damage of these types is halved.
| this is an example = yes
| notes = * note 1
* note 2
}}


== Bone Chilled (Condition) ==
<div class="bg3wiki-tooltip-box bg3wiki-tooltip-gradient-common">
{{#invoke: ParseList | main | {{{grants}}} | type = htmlListNoBullets | useTemplate = SAI/fixed }}
</div>


{{ConditionPage
}}{{#if: {{{condition|}}} |
| name = Bone Chilled
| effects =
* Can not regain [[Hit Points]].
* If Undead, has {{Disadvantage}} on [[Attack Roll]]s.
| this is an example = yes
}}


== Flesh Rot (Condition) ==
<h2> Condition: {{{condition}}} </h2>


{{ConditionPage
<div class="bg3wiki-tooltip-box bg3wiki-tooltip-gradient-common">
| name = Flesh Rot
{{Condition | {{{condition}}}
| effects =  
| save = {{{condition save|}}}
* Flesh is decaying.
| dc = {{{condition dc|}}}
* {{Disadvantage}} on [[Ability Check]]s and {{SavingThrow}}s using Charisma.
| radius m = {{{condition radius m|}}}
* Vulnerable to all damage.
| duration = {{{condition duration|}}}
| type = diseased
| this is an example = yes
}}
}}
{{main namespace only|{{Inflicts|{{{condition}}}|cond|type=condition|dc={{{condition dc|}}}|save={{{condition save|}}}|duration={{{condition duration|}}}}}}}
</div>
}}{{#if: {{{condition2|}}} | {{blank}}


== Multiple types example ==
<h2> Condition: {{{condition2}}} </h2>


{{ConditionPage
<div class="bg3wiki-tooltip-box bg3wiki-tooltip-gradient-common">
| name = Absolutely Ruined
{{Condition | {{{condition2}}}
| icon = Generic Death Icon.webp
| save = {{{condition2 save|}}}
| effects =  
| dc = {{{condition2 dc|}}}
* How are you still alive?
| radius m = {{{condition2 radius m|}}}
* {{Disadvantage}} on [[Ability Check]]s and {{SavingThrow}}s using Charisma.
| duration = {{{condition2 duration|}}}
* Vulnerable to all damage.
| type = diseased, cursed,incapacitated, prone, charmed
| this is an example = yes
| suppress sources = true
}}
}}
{{main namespace only|{{Inflicts|{{{condition2}}}|cond|type=condition|dc={{{condition2 dc|}}}|save={{{condition2 save|}}}|duration={{{condition2 duration|}}}}}}}
</div>


}}{{#if: {{{condition3|}}} | {{blank}}


== Grants example ==
<h2> Condition: {{{condition3}}} </h2>


{{ConditionPage
<div class="bg3wiki-tooltip-box bg3wiki-tooltip-gradient-common">
| icon = Dread Ambusher Icon.webp
{{Condition | {{{condition3}}}
| name = Dread Ambusher
| save = {{{condition3 save|}}}
| effects = * [[Movement speed]] increased by 10ft. Affected entity can make a weapon attack as a bonus action that deals an additional 1d8 damage.
| dc = {{{condition3 dc|}}}
| grants = Dread Ambusher (Melee), Dread Ambusher (Ranged)
| radius m = {{{condition3 radius m|}}}
| duration = {{{condition3 duration|}}}
}}
{{main namespace only|{{Inflicts|{{{condition3}}}|cond|type=condition|dc={{{condition3 dc|}}}|save={{{condition3 save|}}}|duration={{{condition3 duration|}}}}}}}
</div>
}}<references/>
{{#if:{{{notes|}}}|
== Notes ==
{{{notes}}}
}}
}}
{{#if:{{{bugs|}}}|
== Bugs ==
{{{bugs}}}
[[Category:Bugs]]
}}{{#if:{{#lvar:stackid}}|{{blank}}


== Conditions with the same stack ID ==
Conditions with the [[stack ID]] {{code|{{{stack id}}}}}, only one of these can be applied at the same time:
{{#cargo_query:
tables = conditions
|fields = _pageName = page, name, icon, effects
|where = stack_id='{{{stack id}}}'
|order by = name
|format=template
|named args = yes
|template=ConditionsTableRow
|intro={{ConditionsTableHeader}}
|outro={{ConditionsTableFooter}}
}}{{Main namespace only|[[Category:Conditions with shared stack IDs]]}}
}}{{#if: {{{suppress sources|}}} | | {{blank}}


[[Category:Page generating templates]][[Category:Condition templates]]
== Sources of {{#lvar:name}} ==


{{#cargo_declare: _table = conditions
{{Condition sources | {{#lvar:page}} }}
}}
<!--some housekeeping:categories and cargo-->{{Main namespace only|[[Category:Conditions]]{{#cargo_store: _table = conditions
| name = {{#lvar:name}}
| icon = {{#lvar:icon}}
| brief = {{{brief|}}}
| types = {{#lvar:type}}
| condition_name = {{{condition|}}}
| condition2_name = {{{condition2|}}}
| condition3_name = {{{condition3|}}}
}}
}}</includeonly><noinclude>{{documentation}}{{#cargo_declare: _table = conditions
| name = String (unique, mandatory)
| name = String (unique, mandatory)
| icon = File
| icon = File
| effects = Wikitext
| effects = Wikitext
| brief = Wikitext
| types = List (,) of String
| types = List (,) of String
}}
| stack_id = string
 
| status_groups = List (,) of String
== Template data ==
| tick_type = String
<templatedata>
| properties = List (,) of String
{
| stack_type = String
"params": {
| condition_name = String
"name": {
| condition_save = String
"description": "If specified, overrides the name.",
| condition_dc = String
"type": "string",
| condition2_name = String
"default": "Uses the name of the page, minus (Condition)."
| condition2_save = String
},
| condition2_dc = String
"icon": {
| condition3_name = String
"description": "If specified, overrides the icon.",
| condition3_save = String
"type": "wiki-file-name",
| condition3_dc = String
"default": "Uses the \"name\" plus Condition.webp"
}}</noinclude>
},
"disease": {
"description": "If specified, sets the type to be disease",
"type": "boolean",
"deprecated": true
},
"type": {
"description": "The type or types of the condition. If multiple, separate the types with commas.",
"type": "string"
},
"effects": {
"description": "The description of the condition.",
"type": "content",
"suggested": true
},
"this is an example": {
"description": "If specified, does not insert into the Conditions table.",
"type": "boolean"
},
"suppress sources": {
"description": "If specified, will not display \"sources of\".",
"type": "boolean"
},
"notes": {
"description": "Notes, displayed before the list of sources",
"type": "string"
}
}
}
</templatedata>}}</noinclude>

Revision as of 07:19, 7 September 2024

Template documentation

If the page title is Blah (Condition), then you don't have to provide the name parameter. Likewise, if the icon for the condition is called Blah Condition Icon.webp then you don't have to provide the icon parameter.

If a condition has multiple types, separate them with a semicolon.

{{Condition page
| effects =
| type =
| honour mode = 
| stack id = 
| status groups = 
| tick type = 
| stack type = 
| stack priority = 
| properties = 
| grants = 
| condition =
| condition duration = 
| condition save = 
| condition dc =
| condition radius m =
| condition2 =
| condition2 duration = 
| condition2 save = 
| condition2 dc =
| condition2 radius m =
| condition3 =
| condition3 duration = 
| condition3 save = 
| condition3 dc =
| condition3 radius m =
| notes =
| bugs =
}}

Examples:

Blade Ward (Condition)

Condition Type Icon.pngCursedProne

Honour mode

  • If you get hit by anything you are not resistant too, you immediately die.

Properties

Stack ID Stack ID: HASTE

Status groups Status groups: SG_RemoveOnRespec

Loses duration Loses duration: end of turn

If already applied If already applied: don't apply

Stack priority Stack priority: 10

More properties More properties:

Notes

  • note 1
  • note 2

Bugs

  • bug 1
  • bug 2

Sources of Blade Ward

No results


Bone Chilled (Condition)

Properties

Stack ID Stack ID: MEENLOCK_FEAR

Loses duration Loses duration: No

More properties More properties:

Sources of Bone Chilled

No results


Flesh Rot (Condition)

Condition Type Icon.pngDiseased

Sources of Flesh Rot

No results


Multiple types example

Condition Type Icon.pngDiseasedCursedIncapacitatedProneCharmed

Template data

No description.

Template parameters

This template prefers block formatting of parameters.

ParameterDescriptionTypeStatus
namename

If specified, overrides the name.

Default
Uses the name of the page, minus (Condition).
Stringoptional
iconicon

If specified, overrides the icon.

Default
Uses the "name" plus Condition.webp
Fileoptional
diseasedisease

If specified, sets the type to be disease

Booleandeprecated
typetype

The type or types of the condition. If multiple, separate the types with commas.

Suggested values
Cursed Diseased Poisoned Polymorphed Charmed Frightened Incapacitated Prone Unconscious Blinded Maimed
Stringoptional
stack idstack id

Stack ID for the condition. Conditions with the same stack ID can not be present at the same time. If a stack ID is specified, it will only display if there are other conditions with that stack ID. It will also display those conditions.

Example
HASTE, Polymorph_WildShape
Stringoptional
status groupsstatus groups

Any status groups the condition belongs too. If multiple, separate the types with commas.

Example
mad, invisible, helpable condition, light, weapon coating,
Stringoptional
tick typetick type

When the condition loses duration. This can be at the start or end of a turn. If marked with '''none''' the condition will be marked as not having a duration. This may be used by conditions who are active based on something else like a passive feature or standing near something. If you are unsure, leave it empty.

Suggested values
start end none
Stringoptional
stack typestack type

Decides what happends when the condition is applied while already being present. '''additive''' adds the durations together, '''overwrite''' replaces the present condition and duration with the new, and '''ignore''' will keep the present condition and duration. This can be important on conditions who have the same stack ID as other conditions to show which of them takes priority, and for showing if you can increase the duration of a condition by applying it again.

Suggested values
additive overwrite ignore
Stringoptional
stack prioritystack priority

Conditions with higher stack priority overwrite conditions with lower stack priority when applied.

Example
1, 3, 5, 10
Stringoptional
propertiesproperties

Properties for the condition. If multiple, separate the types with commas.

Example
FreezeDuration, IgnoreResting, InitiateCombat, ApplyToDead
Stringoptional
effectseffects

The description of the condition.

Contentsuggested
briefbrief

Optional brief description to be used in infoboxes and other places where the text should be short. If left out, defaults to the same value as the effects field.

Contentsuggested
conditioncondition

The full name of the condition (if any) that this action applies to its target/s. Leave blank if there is no condition.

Example
Hastened
Stringoptional
condition durationcondition duration

The duration in turns of the action's applied condition. Leave blank if the duration is unlimited.

Example
5
Numberoptional
condition savecondition save

The save that the action's target must roll to avoid or reduce its effects. Can use short or long name, e.g: "STR" or "Strength"

Suggested values
Strength Dexterity Constitution Intelligence Wisdom Charisma
Example
WIS
Stringoptional
condition dccondition dc

The optional fixed DC of the condition that targets have to pass to apply it

Example
12
Numberoptional
condition radius mcondition radius m

The optional radius, in meters, where this condition is applied

Example
3
Numberoptional
condition2condition2

The full name of the condition (if any) that is applied if there is a second condition.

Example
Hastened
Stringoptional
condition2 durationcondition2 duration

The duration in turns of the action's second condition. Leave blank if the duration is unlimited.

Example
5
Numberoptional
condition2 savecondition2 save

The save that the action's target must roll to avoid or reduce the effects of the second condition. Can use short or long name, e.g: "STR" or "Strength"

Suggested values
Strength Dexterity Constitution Intelligence Wisdom Charisma
Example
WIS
Stringoptional
condition2 dccondition2 dc

The optional fixed DC of the second condition that targets have to pass to apply it

Example
12
Numberoptional
condition2 radius mcondition2 radius m

The optional radius, in meters, where the third condition is applied

Example
3
Numberoptional
condition3condition3

The full name of the condition (if any) that is applied if there is a third condition.

Example
Hastened
Stringoptional
condition3 durationcondition3 duration

The duration in turns of the action's third condition. Leave blank if the duration is unlimited.

Example
5
Numberoptional
condition3 savecondition3 save

The save that the action's target must roll to avoid or reduce the effects of the third condition. Can use short or long name, e.g: "STR" or "Strength"

Suggested values
Strength Dexterity Constitution Intelligence Wisdom Charisma
Example
WIS
Stringoptional
condition3 dccondition3 dc

The optional fixed DC of the third condition that targets have to pass to apply it

Example
12
Numberoptional
grantsgrants

This specifies what spells/actions are granted to whoever has this condition

Example
Heart of the Storm
Stringoptional
this is an examplethis is an example

If specified, does not insert into the Conditions table.

Booleanoptional
suppress sourcessuppress sources

If specified, will not display "sources of".

Booleanoptional
honour modehonour mode

Changes that apply under the honour mode difficulty.

Stringoptional
notesnotes

Notes, displayed before the list of sources

Stringoptional
This template defines the table "conditions". View table.