Simple Worldbuilding Plus

Latest version1.2.0
Minimum Core11
Compatible Core11
Last updated1 month ago
Created3 years ago
Languages English
Systems Worldbuilding
Project source Project URL
Changelog Changelog URL

Simple Worldbuilding Plus

Foundry v11.315 Foundry v12

This is a small module that adds a few quality of life enhancements to make it easier to build custom character sheets in the Simple Worldbuilding system.

  • Adds support for inline rolls in the description tab of the character sheet that can reference your actor and item roll attributes.
  • Adds support for defining derived attributes in a module setting so that you can define them in one place rather than across multiple actors.


Install via Foundry's package manager or the following manifest URL:

Inline stat syntax

There's currently an issue in Simple Worldbuilding that prevents inline rolls such as [[@str]] from outputting correctly if they're included in a character sheet due to the actor not being passed to the sheet. This resolves that by overriding the sheet and passing that data in. Additionally, if a roll is just for display and isnt' a button, the d20 icon on the result will be hidden in the sheet.

Legacy Inline Rolls

In older versions of this module, inline rolls were added to the sheet with curly braces, such as {{@str}}. The module now uses the normal [[@str]] syntax, but there is a compatibility layer in place to convert to the new syntax on the fly. You should use [[@attrName]] going forward, but if/when the module eventually removes support for the previous format, a migration will be included to convert rolls for you.

Derived Values

Note: In the 1.1.0 version of this module, this is now tracked in a module setting under the settings configuration dialog rather than a journal entry. The syntax is still the same however.

This module checks for a special journal entry called SWP_DERIVED. If this template exists, it will be parsed for derived attribute formulas, and those will be made available to your actors for both the {{@attr}} syntax and for both regular and inline rolls.

Each derived attribute must be on a new line and uses the following format:


Derived attributes will be placed in a special d attribute on your actor. For example, this journal entry example would derive d20 modifiers for the 6 ability scores:

||str.mod|floor((@str - 10) / 2)||
||dex.mod|floor((@dex - 10) / 2)||
||con.mod|floor((@con - 10) / 2)||
||int.mod|floor((@int - 10) / 2)||
||wis.mod|floor((@wis - 10) / 2)||
||cha.mod|floor((@cha - 10) / 2)||

Those would all be placed in, so that you could reference them in rolls using text such as {{@d.str.mod}} or {{@d.dex.mod}}. The d prefix is necessary because if you're using the short syntax, the attributes are string/number/bool values and not objects, so it's impossible to have both @str and @str.mod in that scenario.

Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x