Skip to content

Inline Text Markup

Inside prose, {...} tokens personalize text. Unknown tokens are a build error, so a typo like {naem} can’t reach the player.

The full condition grammar, with {elseif} and {else}, nestable:

There's 9 candles on the {if WEA >= 70}big{else}little{endif} cake.
{if INT >= 90}You see the trick instantly.{elseif INT >= 60}It takes a
minute, but you get there.{else}Magic, probably.{endif}

A group with no matching branch and no {else} renders nothing.

Resolved from the player’s character:

Tokenhe/himshe/herthey/them
{they}heshethey
{them}himherthem
{their}hishertheir
{theirs}hisherstheirs
{themselves}himselfherselfthemselves
{are}isisare
{name}- the character’s name -

Capitalized variants ({They}, {Their}, …) capitalize the substitution.

Print a number straight into the prose. The naming rules are the ones conditions already use, so there is nothing new to learn: uppercase is a stat, age is age, snake_case is a variable.

You have been here {visits} times.
You are {age}, and your name is {name}.

Value tokens work in choice text too. A variable that was never set prints 0, true prints 1, and false prints 0 - the same coercion += uses. The pronoun token names above are reserved: a variable called name or are can be set, but not printed.

world entity your fragment declared, resolved while the file is read rather than while the game runs.

Because any snake_case token is a variable read, a misspelled one prints 0 instead of failing the build. The build warns when prose reads a variable that nothing in the same file ever sets, which catches most typos. A variable set by a different file is legitimate, so it stays a warning rather than an error. Write sentences so they read naturally with all three pronoun sets - {they} conjugates as plural, so use {are} for the is/are agreement:

{They} {are} the kind of kid teachers remember.
→ "He is…" / "She is…" / "They are…"