ANNOUNCEMENT: Stateful Narration Editor

Hi, there!

The Stateful Narration Editor is a tool for writing stateful media with narration-based agency and affective input.

A Stateful Narration is literature that lets your audience make a connection through key words at key moments in your narration.

This version of the tool allows you to write works like The Lottery Ticket, and includes offline development, minimal documentation, and some annotated example writing. For any problems, please feel free to contact me either here or by email at dorian.passer@gmail.com.

Thanks and Enjoy!

4 Likes

I checked it out on itch - it opens a new window with what appears to be code and compile, but the result is just black. Should something be happening on the right? Even if I click to open in a new tab. Does the IDE not work with Safari on Mac?

2 Likes

Firefox on Linux here, working fine. Interesting concept!

2 Likes

I can confirm that this does not work in Safari. Seems to work fine in Firefox on Mac, though.

EDIT: The Safari JavaScript console shows the errors

[Error] SyntaxError: Invalid regular expression: invalid group specifier name
	(anonymous function) (frame.d0127b5a.js:1)

and

[Error] Error: Cannot find module 'iXKiJ'
	e (frame.2bdf4582.js:1:441)
	(anonymous function) (frame.2f833e39.js:1:505)
	Global code (frame.2f833e39.js:1:1043)
2 Likes

I still don’t understand entirely how this works. Can you tell us a bit more about it? It seems to have a built-in adjective list. Are these adjectives grouped into positive/negative emotions? So the user types an adjective and the story changes according to whether the adjective was positive/negative?

2 Likes

Thanks, everyone so far, for checking out the editor! And, of course, thanks letting me know about any issues.


My apologies about this. I did note my supported browsers under the Editor Requirements section, but perhaps the strikethrough for the Safari was perhaps too faint, so I moved that all to a standalone section under the heading Supported Browsers for better visibility.

Unfortunately, supporting the Safari browser is nearly impossible without owning a Mac. I’ve tried debugging with Safari 5.1.7 for Windows (circa 2012), but since this version is unsupported by Apple, there’s lots of freezing (won’t even load the itchio home page) and is missing a developer console.

Since most writers likely own a Mac, I’ll have to find a way to support the Safari browser in the near future. In the meantime, is it possible to use a Chromium-based browser (like Brave or Chromium)?


I did have a chance to test on Firefox, but found the parser hints didn’t fully work. (Unfortunately, browsers are still inconsistent with handling events.) According to statcounter GlobalStats for Desktop browsers, Chromium-based browsers have a 78% share, while Firefox has 7%, so I’m holding off fully supporting Firefox until later.


Thanks for letting me know. I’ll take care of these as soon as I can find a Mac for testing. Apologies here, but glad your able to proceed with Firefox.


To me, I think you get the gist of how this system works. The idea that words are “grouped into positive/negative emotions” is a good enough metaphor to get started.

However, the theory and implementation is not the metaphor. For instance, the words — adverbs, nouns, and verbs, in addition to adjectives — have a confidence score, meaning how confident are we that someone would consider a word to have a pleasant and/or unpleasant connection. (Sentiment analysis is inherently subjective, so there’s a lot of scoping and caveats to wring out any constructive functionality.)

If you are interested, these post have some more details about this approach:

1 Like

Oh that’s cool, I didn’t read the notes, I just clicked over into the thing and was like hey! without RTFM. No problem since you’re aware of it.

2 Likes

New Feature: Hints

To provide a hint for a blank slot in a conversation fence, use curly brackets.

$word{This is a hint.}

For more details, please visit: New Feature: Hints - Stateful Narration Editor by Dorian Passer