Generator Building 7 - Brews, Oils and 3 Day Durations

Potions expand out to tonics, mixtures, oils and unguents. And may last for longer than 1d6 minutes

This is part 7 of a series of articles on Creating a Random Generator. Part 6 is here.

Tidying Up

You can work on a generator for ever, coming back to it again and again. Tinkering, expanding, rewriting, iterating. But at some point it's time to draw a line.

So here I'm tidying up a few issues, then tackling containers and then probably calling it a day with the potions.

Leaving containers for it's own blog post

Elixirs, Brews, Tonics and Cordials

In our templates we our using potion, elixir and liquid as our potion "type". We can add to these and put them in a list to add more variations

And quick look search on similar words to "potion" and "liquid" and a list forms of

  • liquid
  • potion
  • elixir
  • brew
  • cordial
  • mixture
  • philter
  • tonic
  • draft

In Perchance they become the list "liquidelixirpotion"

This list is fine but instead of an equal spread we'll make the more unusual liquid types occur less often and make "potion" turn up more often that the others.

This can be done with ranges and specifying percentages or chances but we'll keep it simple. The "rarer" words will go into option selectors and we'll repeat "potion" in our list.

So in Perchance this looks like

Perchance liquid_elixir_potion list

And the first template becomes

This [liquiddescriptor] [liquidelixirpotion] gives the drinker [potioneffect] for 1d6 minutes.

With similar updates for the other templates.

In Chartopia we create a new subchart Liquid Elixir Potion which looks like

Chartopia liquid elixir potion subchart

Oils and Creams

Not all magical liquids are consumed. Some are applied, smeared on or lathered. Think "Oil of Etherealness" from Dungeons and Dragons. Sometimes they also work on objects but we'll leave that out of our generator.

Appropriate items are salve, cream, oil, unguent, lotion, gel

An easy way to add them in is to include a new template. We'll leave out "Taste and Smell" as having a delicious gel could lead to adventurer poisoning.

In Perchance we add

Applying this [liquiddescriptor] {salve|cream|oil|unguent|lotion|gel} grants [potioneffect] for 1d6 minutes.

In Chartopia we add

Applying this CHART(32214) {salve|cream|oil|unguent|lotion|gel} grants {{rolled_effect}} for 1d6 minutes.

Where CHART(32214) shows in the editor as "Roll on "Liquid Descriptors"

And an example from Chartopia is

Applying this herbal lotion grants a curse to be unable to talk except in rhyme for 1d6 minutes.


Currently the durations are all 1d6 minutes. This is easily improved by adding a list of durations, such as

One is some effects having an instantaneous effect such as a healing potion. Currently these are lasting for "1d6 minutes" when a duration appears.

The second is that duration is always 1d6 minutes. We'll add some variety to how long the durations are.

  1. 1d6 minutes
  2. 1d20 minutes
  3. 2d8 minutes
  4. 3d10 minutes
  5. 1d3 hours
  6. 1d100 minutes
  7. 1d4 days
  8. 10 minutes
  9. 1 hour
  10. 1 day
  11. {2-11} minutes
  12. {2-5} hours

The list has a mix of random durations the user can resolve (1d100 minutes), fixed durations (1 hour) and pre-rolled duration (1d4+1 hours)

In Chartopia and Perchance these are added to a new list and the potion templates updated, replacing "1d6 minutes" with the new list.

There is still a problem of durations occurring for effects that don't need a duration ("instantly heal all wounds and afflictions"). But that can wait

Finishing Up

Next up will be Labels and Containers.

New versions of Chartopia Potions and Perchance Potions are up.

Any questions or requests welcome.

If you've got feedback leave a comment, head on over to r/rpg_generators at reddit or come join the Rand Roll discord server.