Skip to content

Resistance

Examples

Example

<Resistance>
  <Foundation>
    <Damage>
      <Hack>
        10.0
      </Hack>
      <Pierce>
        0.0
      </Pierce>
      <Crush>
        5.0
      </Crush>
    </Damage>
    <Capture>
      10
    </Capture>
  </Foundation>
  <Entity>
    <Damage>
      <Poison>
        5
      </Poison>
    </Damage>
  </Entity>
</Resistance>

XML Elements

The following elements can be used within this component:

Resistance

Foundation

Resistance of an unfinished structure (i.e. a foundation).

Path: Resistance/Foundation

Damage

Path: Resistance/Foundation/Damage

{DamageType}

Resistance against any number of damage types affecting health.

Type: non-negative decimal

Path: Resistance/Foundation/Damage/{DamageType}

Capture

Resistance against Capture attacks.

Type: non-negative decimal

Path: Resistance/Foundation/Capture

ApplyStatus

Resistance against StatusEffects.

Path: Resistance/Foundation/ApplyStatus

{ApplyStatusType}

Resistance against any number of status effects.

Path: Resistance/Foundation/ApplyStatus/{ApplyStatusType}

Duration

The reduction in duration of the status. The normal duration time is multiplied by this factor.

Type: non-negative decimal

Path: Resistance/Foundation/ApplyStatus/{ApplyStatusType}/Duration

BlockChance

The chance of blocking the status. In the interval [0,1].

Type: non-negative decimal

Path: Resistance/Foundation/ApplyStatus/{ApplyStatusType}/BlockChance

Entity

Resistance of an entity.

Path: Resistance/Entity

Damage

Path: Resistance/Entity/Damage

{DamageType}

Resistance against any number of damage types affecting health.

Type: non-negative decimal

Path: Resistance/Entity/Damage/{DamageType}

Capture

Resistance against Capture attacks.

Type: non-negative decimal

Path: Resistance/Entity/Capture

ApplyStatus

Resistance against StatusEffects.

Path: Resistance/Entity/ApplyStatus

{ApplyStatusType}

Resistance against any number of status effects.

Path: Resistance/Entity/ApplyStatus/{ApplyStatusType}

Duration

The reduction in duration of the status. The normal duration time is multiplied by this factor.

Type: non-negative decimal

Path: Resistance/Entity/ApplyStatus/{ApplyStatusType}/Duration

BlockChance

The chance of blocking the status. In the interval [0,1].

Type: non-negative decimal

Path: Resistance/Entity/ApplyStatus/{ApplyStatusType}/BlockChance

RELAX NG Grammar

<define name="component.Resistance">
  <element name="Resistance">
    <interleave>
      <zeroOrMore>
        <choice>
          <element name="Foundation">
            <oneOrMore>
              <choice>
                <element name="Damage">
                  <oneOrMore>
                    <element>
                      <anyName/>
                      <ref name="nonNegativeDecimal"/>
                    </element>
                  </oneOrMore>
                </element>
                <element name="Capture">
                  <ref name="nonNegativeDecimal"/>
                </element>
                <element name="ApplyStatus">
                  <oneOrMore>
                    <element>
                      <anyName/>
                      <interleave>
                        <optional>
                          <element name="Duration">
                            <ref name="nonNegativeDecimal"/>
                          </element>
                        </optional>
                        <optional>
                          <element name="BlockChance">
                            <ref name="nonNegativeDecimal"/>
                          </element>
                        </optional>
                      </interleave>
                    </element>
                  </oneOrMore>
                </element>
              </choice>
            </oneOrMore>
          </element>
          <element name="Entity">
            <oneOrMore>
              <choice>
                <element name="Damage">
                  <oneOrMore>
                    <element>
                      <anyName/>
                      <ref name="nonNegativeDecimal"/>
                    </element>
                  </oneOrMore>
                </element>
                <element name="Capture">
                  <ref name="nonNegativeDecimal"/>
                </element>
                <element name="ApplyStatus">
                  <oneOrMore>
                    <element>
                      <anyName/>
                      <interleave>
                        <optional>
                          <element name="Duration">
                            <ref name="nonNegativeDecimal"/>
                          </element>
                        </optional>
                        <optional>
                          <element name="BlockChance">
                            <ref name="nonNegativeDecimal"/>
                          </element>
                        </optional>
                      </interleave>
                    </element>
                  </oneOrMore>
                </element>
              </choice>
            </oneOrMore>
          </element>
        </choice>
      </zeroOrMore>
    </interleave>
  </element>
</define>