Skip to content

How Do I

Cody Swendrowski edited this page Jun 12, 2026 · 1 revision

How Do I…?

Can't find the feature you need? This page maps plain-English goals to the exact doc section that answers them. Pick the closest description of what you're trying to do and follow the link.

Tip: If a goal isn't listed here, try the Glossary for individual keyword definitions, or browse Recipes for copy-paste patterns.


Fields & Data

I want to… Go here
Add a basic number (level, XP, gold) Fields — Number
Add a yes/no checkbox Fields — Boolean
Add a text field Fields — String
Add a dropdown with fixed choices Fields — Choice String
Add a multi-select picker ("pick 2 of these traits") Fields — Choices String
Add a rich-text / formatted description Fields — HTML
Add a portrait / character image Fields — Image
Move the portrait anywhere on the sheet Fields — Image (primary: true)
Store a die size (d4, d6, d8…) Fields — Die Field
Store a dice pool (2d6, 3d8…) Fields — Dice Field
Store date, time, or date-and-time Fields — Date, Time, and DateTime
Add a health/mana bar with a token resource bar Fields — Resource
Add a score/modifier pair (like D&D STR 16 / +3) Fields — Attribute
Add a tracker (mana, shields, clocks, stress) Fields — Tracker
Add a World of Darkness–style damage track Fields — Damage Track
Add a currency system (gold/silver/copper) Fields — Money
Add a measured template field for AoE spells Fields — Measured Template
Add an equipment paperdoll / slot layout Fields — Paper Doll
Add a grid-based inventory Fields — Inventory Field
Add a table of owned items (spells, equipment…) Fields — Item List
Filter a table to show only some items (e.g. only Armor) Fields — Item List (where:)
Let users pin frequently used items for quick access Fields — Pinned Field
Add a custom data table Fields — Table Field
Link to a single item via drag-and-drop Fields — Single Item
Link to a single item via searchable dropdown Fields — Document Choice
Link to multiple items via dropdown Fields — Document Choices
Let the player pick which stat to roll at play time Fields — Self Property Reference
Let an item reference its owning actor's stats Fields — Parent Property Reference
Show damage bonus / resistance summary tables Fields — Bonuses / Resistances
Show a probability chart for a dice formula Fields — Roll Visualizer
Store an executable macro on a sheet Fields — Macro Field
Compute a field's value from other fields Fields — Number (value:)
Set a field's starting value at character creation Fields — Number (initial:)
Set a min or max on a number field Fields — Standard Parameters
Make a field always read-only Fields — Visibility Tags (locked / readonly)
Make a field completely invisible (but still store data) Fields — Visibility Shorthand Prefixes (hidden)
Make a field only show in Edit Mode Fields — Visibility Shorthand Prefixes (edit)
Make a field only show in Play Mode Fields — Visibility Shorthand Prefixes (play)
Hide a field from players but show it to the GM Fields — Visibility Shorthand Prefixes (gmOnly)
Hide a field from non-owner viewers Fields — Visibility Shorthand Prefixes (secret)
Show a field only for a specific class or condition Fields — Standard Parameters (visibility:)
Hide a field unless in Edit Mode Fields — Visibility Shorthand Prefixes (edit)
Keep a field always editable (skip Edit Mode requirement) Fields — Visibility Shorthand Prefixes (unlocked)
Change a field's display label without changing its ID Fields — Standard Parameters (label:)
Add a Font Awesome icon to a field Fields — Standard Parameters (icon:)
Remove the calculator button on a number field Fields — Number (calculator: false)
Make a number field show the calculator button Fields — Number (calculator: true)

Layout & Styling

I want to… Go here
Place fields side by side Document — Row
Create a two-column layout Document — Column
Group related fields in a card/section Document — Section
Add a new tab to the character sheet Document — Page
Change the background pattern on a tab Document — Page (background:)
Change the system's primary color / fonts Theming
Change the color for just one field Theming — Per-field overrides
Set a field's min/max width or height Theming — Per-field overrides (width:, height:)
Remove / change the border on a section Theming — Theming layout containers
Remove the box shadow (elevation) on a section Theming — Theming layout containers
Change colors, fonts or borders at the system level Theming
Add a web font or film-grain texture Theming — Sidecar stylesheets
Style chat cards, dialogs, or non-sheet surfaces Theming — Sidecar stylesheets (globalStyles)
Write custom CSS that survives regeneration Custom Code & Styles
Use CSS classes to target specific fields Theming — Per-field overrides (.isdl-field-<name>)
Lock down the system look (no per-player color pickers) Theming — Per-document color pickers (userColors = false)
Make play-mode text more readable Theming — Readable play mode
Set the default sheet size Document — Document Parameters (width:, height:)
Scale the entire sheet up or down Document — Document Parameters (zoom:)

Rolls & Dice

I want to… Go here
Roll dice in an action Basic Logic — Dice Rolling
Add a roll button directly on an attribute Fields — Attribute (roll:)
Run a function when an attribute is clicked Fields — Attribute (function:)
Use Foundry dice modifiers (keep highest, explode…) Basic Logic — Common Dice Patterns
Roll with advantage (2d20 keep highest) Recipes — Rolling with Advantage / Bonuses
Detect a critical hit or fumble Recipes — Attack with Critical Hits
Count successes in a dice pool Recipes — Dice Pool: Counting Successes
Check if any die in a pool shows a 1 Recipes — Dice Pool: Fail if Any Die Shows a 1 (EZD6)
See the expected value / distribution of a formula Fields — Roll Visualizer
Display a roll with a full breakdown in chat Basic Logic — Roll Properties
Add a flat bonus to a roll from a prompt Recipes — Rolling with Advantage / Bonuses
Make a damage roll with a typed damage type Fields — Choice DamageType
Step a die up or down (d6 → d8) Fields — Die Field

Logic & Calculations

I want to… Go here
Compute a value from other fields Fields — Standard Parameters (value:)
Compute a resource's max from other fields Fields — Resource (max:)
Write an if/else condition Basic Logic — Comparisons and Conditions
Use a ternary shorthand (condition ? A : B) Basic Logic — Shorthand Conditions
Store a temporary value during an action Basic Logic — Variables (fleeting)
Store an immutable constant Basic Logic — Variables (eternal)
Use Math.floor, Math.max, etc. Basic Logic — Common Math Functions
Reuse logic across multiple actions Advanced Logic — Functions
Call a function from a calculated value: field Advanced Logic — Functions in Calculated Values
Loop over all items in a table Advanced Logic — Each Loops
Loop over a numeric range Advanced Logic — Number Range Iteration
Check if a field exists before using it Advanced Logic — Logical Operators (exists)
Access the character's own fields Basic Logic — Accessing Character Data (self)
Access the owning actor from an item action Basic Logic — Accessing Character Data (parent)
Access the currently targeted token Basic Logic — Accessing Character Data (target)
Check if the current user is a GM Basic Logic — Accessing Character Data (User.isGM)
Read or write a game setting from logic Config — Settings
Force a document update mid-action Interactivity — Debug and Development Tools (self.update())
Add a log statement for debugging Interactivity — Debug and Development Tools
Use a JavaScript escape hatch for unsupported operations Logic Reference — JavaScript Escape Hatch
Write native Foundry JS that survives regeneration Custom Code & Styles

Items & Tables

I want to… Go here
Add a list of owned items (equipment, spells) Fields — Item List
Filter the table to only show certain items Fields — Item List (where:)
Click an item's image to run an action Fields — Item List (imageAction:)
Add a custom data table with flexible columns Fields — Table Field
Choose which columns show by default Fields — Table Field (fields:)
Aggregate item weights / values with a progress bar Fields — Inventory Field (sum:, sumMax:)
Let the player link one item via drag-and-drop Fields — Single Item
Let the player pick an item from a dropdown Fields — Document Choice
Let the player pick multiple items from a dropdown Fields — Document Choices
Loop over all items in a table in action code Advanced Logic — Each Loops
Compute a total from owned item values (weight, bonuses) Recipes — Advanced Inventory Weight System
Track item uses / charges Recipes — Tracking Uses Left

Interactivity & Chat

I want to… Go here
Add a button that does something Basic Logic — Simple Actions
Post a message to the chat log Basic Logic — Chat Cards
Show a roll with an expandable breakdown in chat Basic Logic — Roll Properties
Add flavor text at the top of a chat card Basic Logic — Chat Cards (flavor)
Add small chips / tags at the bottom of a chat card Basic Logic — Chat Cards (tag)
Ask the player a question mid-action Interactivity — Interactive Prompts
Ask the GM for approval mid-action Interactivity — Interactive Prompts (target: "gm")
Give an action a timeout if no answer arrives Interactivity — Interactive Prompts (limit:)
Disable an action button when it can't be used Interactivity — Action Visibility and Control (Visibility.locked)
Hide an action from players Interactivity — Action Visibility and Control
Make an action available on the Foundry macro hotbar Interactivity — Action Visibility and Control (macro action)
React to turn start / turn end in combat Interactivity — Event Handling (on turnStart, on turnEnd)
React to damage being applied Interactivity — Event Handling (on preApplyDamage)
React to character death Interactivity — Event Handling (on death)
Intercept and modify incoming damage Recipes — Handling shields / armor / resistances / etc
Play a sound when an action runs Interactivity — Audio Integration
Add a delay / countdown between steps Interactivity — Timing and Delays
Listen to a Foundry hook Interactivity — Event Handling
Advance combat to the next turn Interactivity — System Integration (Combat.nextTurn())
Show an action only on the actor's turn Recipes — Tracking actions and ending turn automatically

Status Effects & Keywords

I want to… Go here
Add a status condition icon (Poisoned, Stunned…) Keywords & Journals — Status Effects
Auto-apply a status when a condition is true Keywords & Journals — Status Effects (when:)
Mark an actor as dead when HP reaches 0 Keywords & Journals — Status Effects (death status)
Define game terms with colored badges in journals Keywords & Journals — Keywords System
Auto-generate player-facing journals for keywords Keywords & Journals — Automatic Journal Generation
Show/hide fields based on which class the character picked Recipes — Class adds fields
Apply a timed condition (stunned for 2 rounds) Recipes — Status Effects and Conditions
Reduce/negate damage with resistances Recipes — Handling shields / armor / resistances / etc

Project & Publishing

I want to… Go here
Set the system ID, name, and description Config
Declare game settings (world or per-user) Config — Settings
Publish my system to GitHub GitHub Integration
Define actor types (PC, NPC, Monster…) Document
Define item types (Spell, Equipment, Feature…) Document
Use the import keyword / split into multiple files Config — multi-file import is not yet available in the current release
Write custom Foundry JS that survives regeneration Custom Code & Styles
Write custom CSS that survives regeneration Custom Code & Styles
Build from the command line (CI/CD) Command Line Interface
Troubleshoot generation errors Troubleshooting

Clone this wiki locally