Tuesday, November 29, 2022

Acuitas Diary #55 (November 2022)

There's not a lot to report, unfortunately - I'm still bogged down in the Narrative Engine overhaul. It had accumulated quite a few features, so revamping everything and converting it to the new framework is going to take time. As part of that process, though, I came up with a fun new visual tool. I wanted a way to display how Narrative analyzes a story, both as a demonstration of results and to show how the structures of stories differ. It's still incomplete - I want to add some detail - but it gives the rough idea.


To Acuitas, a story is all about how some Agent achieves, or maintains, some Goal. Any status condition that provides an opportunity to realize a Goal, or that threatens a Goal, is referred to as an "Issue." (I used to call these "subgoals" and "problems," but eventually came to understand they could just be given different polarities and handled in the same way.) Issues may spawn Predictions as Acuitas tries to guess how any Agents in the story will respond. Anticipatory statements like "character expected to ..." can also generate Predictions. The Narrative Engine then tests future statements in the story to find out if they resolve any Issues or Predictions.

This yields a basic sense of the flow of action in the story, and is what's captured by the diagrams. The sentences of the story are presented post-conversion to more abstract representations of fact (you could think of these as "the gist" of each sentence). Issues and Predictions appear connected to the sentence that created or resolved them.

So far I've gotten the first two stories that I tested Narrative against up and running in the new version. "Amarok and the Fire," shown at the top of this blog, is a pretty simple affair: one problem that gets resolved after a bit of meandering.


"To Build a Fire" is a more complex story with multiple Issues, a reversal (a problem is initially mitigated, then comes back), and a bad ending. Here's the natural English text for comparison with the diagram:

0:"Jack was a man."
1:"Jack was in Alaska."
2:"Jack was cold."
3:"Jack expected to freeze."
4:"Jack decided to build a fire."
5:"Jack found sticks."
6:"Jack built the fire."
7:"Snow smothered the fire."
8:"The fire was destroyed."
9:"Jack was cold again."
10:"Jack became stiff."
11:"Jack could not build the fire again."
12:"Jack froze."
13:"The end."

I may continue to be a little quiet as I finish up this overhaul, but I have big hopes for next year.

Until the next cycle,
Jenny

No comments:

Post a Comment