OpenD6 TTRPG DSL -- Spell Definitions

Date Tags DSL / OpenD6

The OpenD6 Table-Top Role-Playing Game (TTRPG) has a complicated bit of accounting around the definition for magical spells and invocations. For me, the accounting suggested a need for software tools. This -- in turn -- forced me to invent a Domain-Specific Language (DSL) to work with OpenD6 spells.

I like the OpenD6 …

more ...


The eval() Conundrum and Python-as-DSL

Many people will proclaim that the eval() function is reprentnatly evil.

Feel free to skip the two rants.

BLUF

The eval() function is relatively easy to work with.

Important

Limit the globals to the fewest possible names.

Eval() Rant

A too-common claim is that we can't use eval() because an …

more ...

Analyzing a Dice Mechanic

A "Dice Mechanic"? Yes. The thing you do with the dice to determine an outcome. We'll use Python to see how the dice shake out.

A little backstory

For a casino game of craps, the roll of the dice can be 7 or 11 for an immediate win, 2, 3 …

more ...