Packing Tomatoes at Dusk

Long day today… found out right at the end that tomorrow is our best opportunity to take the next delivery of cherry tomatoes to the wholesaler: his driver is coming reasonably close tomorrow, but on Sunday we’d have to drive all the way out to the warehouse. So we just got done packing cherry tomatoes at about 8:30 PM. Thirty-one cases of a dozen pint clamshells of mixed cherry tomatoes. Along with the 20-pound tray that we’re keeping for weekend retail orders, and the leftovers that are dirty and need to be washed.

The interior of a rough wooden shed. Two blue plastic produce trays are mostly full of a variety of cherry and grape tomatoes in the foreground: behind that are stacks of white cardboard boxes holding plastic pint containers of more.

Did I do any coding-like things today? I’ve been poking through the code to MouseQBN, another implementation of storylets for Twine/SugarCube. Storylets are a narrative technique that one developer recently described as “simply an event system with fruity nomenclature.” So I guess in those terms it means you build a story partially or entirely of events that occur when their conditions are met (e.g. when the player is on the porch of their summer cabin and their best friend is too, near the end of the day) instead of directly branching to the next piece of story.

I had made a storylets library for the same narrative tool a few years back, so it’s interesting to look through this one and see what’s different. A little more programmer-ish: you declare the storylets and their conditions as JSON objects, where my TinyQBN tries to parse some comparison-expression sort of things. And MouseQBN defaults to keeping the conditions separate from the storylet content, which has advantages and disadvantages. I think ideally a tool would give you a dynamic view that lets you see either: sometimes you want to see a whole bunch of conditions together so you can see the overall shape of the story volume, and sometimes you want to see them next to the story content so you can be sure they don’t contradict each other.

Oh. QBN is Quality-Based Narrative, where “qualities” mean stats or attributes of the player or the world or story or whatever. So it’s another term for storylet design.

Anyway. MouseQBN seems like a nice clean design. I think I was the first one to publish a storylets system for Twine (though others had certainly done custom code for particular games) so TinyQBN is a little bit of an exploratory mess in some ways.