27 Jan 2015
January 2015 - Illume and Entweedle

Here we are again, anonymous Internet denizen. You, me, and 1GAM, starting up a third year of this delightful madness. I am powerless to resist the call of ongoing personal challenge, so here we go.

Just as in the past two Januaries, some web dev work is going to be required to accomodate the ever-growing 1GAM archives here, and as luck would have it, the theme this month is Resolution, so what better game-related (if not exactly a game) project than a shiny new responsive design overhaul of the game development portfolio site? I haven't been paid to do web development in nearly a decade, which meant most of my design and Javascript skills were nearly a decade out of date, so I could use some updating on those fronts.

But that's not quite game-related enough for me, so how else could I expand my modern web development knowledge in a game-related way this month? Well, I've worked with Twine several times before, but I'd never had more than a cursory look at Twine 2, and once I got started, I realized the custom story formats were a good area to dive in and try to create something useful while learning about Twine 2 and finally doing some meaningful amount of Javascript. In the end, I had two very different utility story formats for Twine 2 - Entweedle, and Illume.

The Site

This part's pretty straightforward to explain - it's the thing you're looking at. The basic layout remains the same, but I finally learned about responsive design and reworked the whole site to adapt cleanly to various resolutions. The list of projects is finally an actual data structure, so now there are views that sort them by month, or by type, or release date. Tags are visible, games designed for jams are labeled as such, and various other little niceties have been added. Should work better for me, take less effort to maintain, and display much more cleanly on phones and tablets and whatnot. All set for 12 more projects. Woo!


Entweedle was my first experiment in Twine 2 custom story formats, and it serves precisely one purpose. Some of my previous projects have involved creating a story script in Twee 1.x, exporting it to twee source, and parsing that source in a Unity project. I could use Twine as a visual script editor, and then still have the flexibility of a full development environment. Based on the feedback I've gotten on those projects, I'm not the only one.

However, Twine 2 recently came out of alpha/beta into full release, and there's apparently no option to create a twee source file representation of a story. So that's where I started, and before long I had Entweedle. I hope my made-up word is sufficiently evocative of its purpose, but to be clear, it's a story format that converts a Twine 2 story to a twee source file. Since Twine 2 creates HTML exports, what Entweedle actually does is create a story file that has only one visible element, which contains a twee-format conversion of the story's passages. Just copy and paste that into the text editor of your choice, and that should be all you need.

This may be the very nichest of niche needs, but if by some chance you need to be able to export a Twine 2 story to twee, hopefully I've got you covered. The link to my Twine 2 projects page is below.


Illume on the other hand is a bit more complicated. With Entweedle working, I was playing around with ideas for something more complex, and eventually I landed on the idea of a proofing format to improve the reviewing options for someone editing a Twine story, particularly if that person is not the author.

I have more info over on my new Twine Projects page, but the short version is that Illume provides an interface where an editor can review each passage of a Twine story, flag them as reviewed/unreviewed individually, and make changes in-place in the passage viewer. Changes are displayed in a real-time diff format so you can always see what you've changed, and you can revert changes per-passage if needed. You can filter the passage list in various ways, and when you're done, you can export a change list that details every edit made, passage by passage, also in diff format for easy review.

The idea was that it provides a focused editing environment outside of Twine, and because the "illuminated" version of your story can be saved to a file, as can the change list created by the editor, you can easily get well-formatted and easily-reviewed edits from an editor who isn't a developer of any kind, and doesn't even have to use Twine.

I'm not sure if Illume is going anywhere, but it was an interesting project that I may use for my own needs later as I get more into Twine 2, and it's more Javascript than I've written in the past 10 years combined, so that's something anyway.

The Verdict

I allowed myself another game-adjacent project this month so I could dump a ton of Javascript and web stuff into my head, and I think I came out with one thing just for me and two things that could theoretically help myself and others create projects with Twine, so that sounds good to me. Hope you find something useful below.