Actor Attribute Keys - League-of-Fabulous-Developers/FoundryVTT-Fabula-Ultima GitHub Wiki

Attribute Keys

These attribute keys are useful for Active Effects, macros, and anything else that interacts with the Foundry Virtual Tabletop API.

You can also visit our Active Effect Google Sheet for pre-made active effects.

Characters and NPCs

Determining the actor type can be accessed through: actor.type

Both Characters, Companions, NPCs share similar data structures.

Actor Attributes

Main Stat Attributes

  • Replace <key> with one of the following: dex, ins, mig, wlp
    • Base: system.attributes.<key>.base
    • Current: system.attributes.<key>.current

Example: Improve/Reduce Attribute

  • Attribute Key: system.attributes.<key>
  • Choose Custom under Change Mode
  • Change Effect Value to upgrade | downgrade

Resource Attributes

  • Level {number}: system.level.value
  • HP Max {number}: system.resources.hp.max
  • HP Current {number}: system.resources.hp.value
  • HP Bonus {number}: system.resources.hp.bonus
  • MP Max {number}: system.resources.mp.max
  • MP Current {number}: system.resources.mp.value
  • MP Bonus {number}: system.resources.mp.bonus
  • IP Max {number}: system.resources.ip.max
  • IP Current {number}: system.resources.ip.value
  • IP Bonus {number}: system.resources.ip.bonus
  • Fabula Points {number}: system.resources.fp.value

Warning

Resource Points will be removed from the system in favor of creating them via miscAbility items.

  • Resource Points Name 1 {string}: system.resources.rp1.name
  • Resource Points Value 1 {number}: system.resources.rp1.value
  • Resource Points Name 2 {string}: system.resources.rp2.name
  • Resource Points Value 2 {number}: system.resources.rp2.value
  • Resource Points Name 3 {string}: system.resources.rp3.name
  • Resource Points Value 3 {number} system.resources.rp3.value

Derived Stats

  • Initiative Value {number}: system.derived.init.value
  • Initiative Bonus {number}: system.derived.init.bonus
  • Defense Value {number}: system.derived.def.value
  • Defense Bonus {number}: system.derived.def.bonus
  • Magic Defense Value {number}: system.derived.mdef.value
  • Magic Defense Bonus {number}: system.derived.mdef.bonus

Example: Increase Defense/Magic Defense by X

  • Attribute Key: system.derived.<key>.bonus
  • Choose Upgrade under Change Mode
  • Change Effect Value to 2 for +2 bonus DEF

Example: Improve/Reduce Defense/Magic Defense to X

  • Attribute Key: system.derived.<key>.value
  • Choose Upgrade under Change Mode | Downgrade under Change Mode
  • Change Effect Value to 12 for 12 DEF | Effect Value to 4 for 4 DEF

Affinity

  • Physical: system.affinities.physical
  • Air: system.affinities.air
  • Bolt: system.affinities.bolt
  • Dark: system.affinities.dark
  • Earth: system.affinities.earth
  • Fire: system.affinities.fire
  • Ice: system.affinities.ice
  • Light: system.affinities.light
  • Poison: system.affinities.poison

Affinity Types

  • Vulnerable = -1
  • Normal = 0
  • Resistance = 1
  • Immunity = 2
  • Absorption = 3

Example: Editing Affinities

  • (Global) Base affinities: system.affinities.<key>.base
  • Current affinities: system.affinities.<key>.current

To override the current affinity with active effects:

  • Attribute Key: system.affinities.<key>.current
  • Choose Override under Change Mode
  • Adjust Effect Value to the desired affinity type value.

Example: Apply Vulnerability

  • Attribute Key: system.affinities.<key>
  • Choose Custom under Change Mode
  • Change Effect Value to downgrade

Example: Grant Resistance

  • Attribute Key: system.affinities.<key>
  • Choose Custom under Change Mode
  • Change Effect Value to upgrade

Example: Grant Immunity/Absorption

  • Attribute Key: system.affinities.<key>.current
  • Choose Upgrade under Change Mode
  • Change Effect Value to 2 for Immunity | 3 for Absorption

Status Effect Immunities (Available in V2.4.0+)

  • Attribute Key: system.immunities.<key>.base

Immunity Types

  • slow | dazed | weak | shaken | enraged | poisoned

Example: Grant Status Effect Immunity

  • Attribute Key: system.immunities.<key>.base
  • Choose Override under Change Mode
  • Change Effect Value to true

Replace the the following:

Change Mode: Override Effect Value: true

Global Accuracy Bonuses

  • Accuracy Check {number}: system.bonuses.accuracy.accuracyCheck
  • Magic Check {number}: system.bonuses.accuracy.magicCheck
  • Opposed Check {number}: system.bonuses.accuracy.opposedCheck
  • Open Check {number}: system.bonuses.accuracy.openCheck
Melee Bonuses
  • Arcane {number}: system.bonuses.accuracy.arcane
  • Brawling {number}: system.bonuses.accuracy.brawling
  • Dagger {number}: system.bonuses.accuracy.dagger
  • Flail {number}: system.bonuses.accuracy.flail
  • Heavy {number}: system.bonuses.accuracy.heavy
  • Spear {number}: system.bonuses.accuracy.spear
  • Sword {number}: system.bonuses.accuracy.sword
Ranged Bonuses
  • Bow {number}: system.bonuses.accuracy.bow
  • Firearm {number}: system.bonuses.accuracy.firearm
  • Thrown {number}: system.bonuses.accuracy.thrown

Global Damage Bonuses

  • Melee: system.bonuses.damage.melee
  • Ranged: system.bonuses.damage.ranged
  • Spell: system.bonuses.damage.spell

Weapon Damage Bonuses

  • Arcane {number}: system.bonuses.damage.arcane
  • Bow {number}: system.bonuses.damage.bow
  • Brawling {number}: system.bonuses.damage.brawling
  • Dagger {number}: system.bonuses.damage.dagger
  • Firearm {number}: system.bonuses.damage.firearm
  • Flail {number}: system.bonuses.damage.flail
  • Heavy {number}: system.bonuses.damage.heavy
  • Spear {number}: system.bonuses.damage.spear
  • Sword {number}: system.bonuses.damage.sword
  • Thrown {number}: system.bonuses.damage.thrown

Example: Granting "Ranged Weapon Mastery"

This skill provides an SL bonus to all range weapons. When creating a skill, you can set an active effect for it. This is how you'd create the following active effect. image As you can see here, @system.level.value represents the skill's level.

[Note]: Arithmetic Operations are now supported. Example: @system.level.value + 5 or 2 + (@system.level.value * 2)

Character Specific Attributes

Character Statistics

  • Current Zenit {number}: resources.zenit.value
  • Current Experience {number}: system.resources.exp.value
  • Identity {string}: system.resources.identity.name
  • Pronouns {string}: system.resources.pronouns.name
  • Theme {string}: system.resources.theme.name
  • Origin {string}: system.resources.origin.name

NPC Specific Attributes

NPC Statistics

  • Traits {string}: system.traits.value
  • Species {'beast', 'construct', 'demon', 'elemental', 'humanoid', 'monster', 'plant', 'undead'}: system.species.value
  • Villain {"", "minor", "major", "supreme"}: system.villain.value
  • Phases {number}: system.phases.value
  • Multipart {string}: system.multipart.value
  • Rank {"soldier", "elite", "champion", "companion"}: system.rank.value
  • Champion Rank {number}: system.rank.replacedSoldiers
  • Companion Player Level {number}: system.companion.playerLevel
  • Companion Skill Level {number}: system.companion.skillLevel
  • useEquipment {boolean}: Used to determine if an NPC can use Equipment.
    • system.useEquipment.value
  • Associated Therioforms {string}: system.associatedTherioforms

Study Roll

  • Study {0, 1, 2, 3}: Conditionally renders NPC sheet based on results.
    • system.study.value
    • Study Selection
      • Reveal All = 0
      • 10+ = 1
      • 13+ = 2
      • 16+ = 3
⚠️ **GitHub.com Fallback** ⚠️