Dicey Markdown
A Markdown dialect for TTRPG character sheets
Dicey
The core of Dicey is syntax to mark rollable, calculated, and editable values: attack modifiers, saves, DCs, HP and so on. Define in Markdown, interact from the sheet.
[+3]Rolls 1d20 + 3. Press and hold a d20 roll for advantage or disadvantage.
[1d4+3]Rolls the expression as written.
[STR:+3]Defines the fixed variable STR and displays a rollable +3. Use it in a formula such as [1d6+STR].
[1d20+COMP+DES]With COMP:+2 and DES:+3, the renderer combines the modifiers and shows 1d20+5. A variable-only formula such as [COMP+DES] also rolls 1d20+5.
[[CHA+PROF+8]]Calculates and displays the result as ordinary, non-rollable text.
[[SPELL:CHA+PROF]]Defines a calculated SPELL variable. Reuse it in another calculation or in a roll such as [1d20+SPELL].
{16}Click or tap to edit this value.
{CHAMOD:3}An editable integer that also defines CHAMOD for rolls and calculations.
{None}Click or tap to edit text, useful for entries such as conditions or loot.
{{3}}Click or tap to edit, then adjust by one with the − and + buttons.
{{3/5}}Stepper with a fixed maximum of 5 and a resource bar. At zero, the bar disappears. The maximum can also be calculated, as in the examples below.
{{SLOTS:3/CHAMOD+PROF+8}}The current count stays editable; the maximum is calculated. SLOTS is the current count and can be reused elsewhere.
{{3/CHAMOD+PROF+8}}An unnamed stepper can use a calculated maximum too.
Source
Rendered sheet
Source
Rendered sheet
Source
Rendered sheet
Expandos
Write ||Label:, then put the description on following lines and close it with ||. Use two spaces at the end of a line for a rendered line break. Bold text and Dicey rolls work inside.
Source
Rendered sheet
Markdown
Regular Markdown for everything else. The Scrollcase renderer shows single-row tables as boxes.
For example, the table below creates ability score boxes. The words “STR” and “DEX” name each value; the table’s shape determines the layout.
Source
Rendered sheet
Fenced code stays literal; links, bold, and italic work as usual. The example above shows them in context.