Elm Story 0.6 — character management, expanded logic features and term updates

Characters are the driving force for an immersive narrative, but as your storyworlds grow, so does the complexity of managing a large, diverse and evolving cast.

Elm Story 0.6 introduces the new character element type and UIs for character management.

After creating a new character, the character manager will open. The manager is split into three tabbed sections: Info, Personality and Events.

Note — the following screenshots use images from 60 Terrible Character Portraits released under the CC BY 3.0 license.

Character Info

This section is used to edit your character's name, references and description.

By default, each new character is assigned a randomly generated name. To the right of the field is a button for generating new names.

Next is the reference field. The dropdown includes a list of common pronouns and the field also supports custom aliases. Both are used as a way to reference your character throughout your storyworld. When editing a custom alias, every linked reference will update automatically. 

No need to find and replace!

References linked inline of event content is not currently supported, but is a planned feature for the 0.7 release.

Character Personality

This section hosts a compass for mixing unique character personalities across two axes, drive (blue; urge to fulfill) and energy (orange; vitality to sustain). The axes represent the aggregate temperament influencing the character's motivations and emotional core.

Each quadrant contains togglable masks [1, 2] with varying power (1-4x) effect over the aggregate temperament. Masks highlighted in blue and/or orange borders are flagged dominate.

Masks are visualized as character portraits in the event stream throughout the Storyteller’s live performance.

For 0.6, this feature is limited to event personas: further defining how the Storyteller roleplays storyworld events to the audience.

In Elm Story's Scene Map, when a persona is applied to an event, the selected mask will display in the representative node. You can hover over any event node (selected or not) to view a persona overlay, providing an overview and quick access to the character manager.

In future releases, variable temperaments will intelligently influence character development and narrative flow over time.

Character Events

This section displays a list of every event your character is referenced, grouped by scene, across your entire storyworld.

Both scenes and events are linked so that you can quickly navigate to specific parts of your storyworld for editing.

Expanded Logic Features

Path Conditions AND/OR Gates

Prior to 0.6, all path conditions must be met for the Storyteller to consider a path as open. This serves as an AND gate.

0.6 introduces OR; a logic feature necessary to implement something like the wolf, goat and cabbage problem.

When selecting a path, it is possible in 0.6 to switch between matching ALL or ANY conditions defined in the path.

Path Conditions Specificity (if...else)

The Storyteller now considers paths with conditions (if) more important than paths without (else). This simplifies storyworld composition, requiring the designer to define minimal path conditions, without having to manage additional negation state.

When the Storyteller encounters open paths, it will check for the paths with conditions (if), first. Otherwise, the Storyteller will process the path(s) without (else).

In either case, if more than one path is found (if or else), the Storyteller will pick an unweighted random.

Shoutout to riidom_II for providing a test case that drove these logic features.

Term Updates

In 0.6, the following terms are revised to embolden our story-first design intent:

  • Game → Storyworld
  • Engine (ESRE)Storyteller
  • Engine Runtime → Storyteller's Live Performance
  • Game Components → Storyworld Elements
  • Passage Component → Event Element
  • Route Component → Path Element
  • Route Condition Component → Path Condition Element
  • Route Effect Component → Path Effect Element
  • Editor → Composer

0.6.0 (Early Access) Release Notes

An exhaustive list of 0.6 (b7316553) changes are available on our issue tracker.


  • Storyworlds
    • Support for character elements
    • Support for AND/OR gate type in path conditions (match ALL|ANY)
    • Support for path conditions specificity (if...else)
  • Composer
    • Characters list panel
    • Character modal for managing info, personality and associated events

Enhancements, fixes and etc.

  • Storyworlds
    • 0.1.3-0.5.1 database upgrades to 0.6.0 on start
  • Composer
    • Changed Game tab to Storyworld Preview tab
    • Grouped character and variable panels; positioned group under the storyworld outline
    • Changed CID (Component ID) to EID (Element ID)
    • Removed disabled Styles and Problems tabs
    • Disabled path name field in the element properties tab due to lack of use
  • Storyteller
    • Choices now have a max width and text aligns right (changing to left in 0.7) and word breaks
    • Addressed issue where multiple path conditions would result in random behavior
  • Import
    • 0.1.3-0.5.1 data upgrades to 0.6.0 on import
  • Export
    • PWA
      • Support for displaying event personas
      • Support for offline asset caching
      • OpenGraph tags generated for title, description and type


This is an early access release and there are bugs. Report problems to our issue tracker and join our public Discord server. 

0.7 — Multimedia Update

Coming in early January is expanded multimedia with support for inline event content images, background (BG) sound and event transitions.

We're also planning support for inline event content character referencing. That's a mouthful!

For early access previews on our progress, subscribe to our Patreon.

Track roadmap progress via our issue tracker.

Support Elm Story

To help this project continue to thrive with full-time, active feature development and updates, consider a donation via Itch.io.

Become a monthly patron to earn support badges and unlock early access previews, in-app recognition, monthly Q&As, feature priority polls, 1:1 support and ESC name reservations for studio and designer profiles. 

Thank you for your continued support! :)


Elm Story (Early Access) — Windows 60 MB
Version 0.6.0 Dec 11, 2021
Elm Story (Early Access) — Mac 81 MB
Version 0.6.0 Dec 11, 2021
Elm Story (Early Access) — Linux 81 MB
Version 0.6.0 Dec 11, 2021

Get Elm Story

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.