Tuesday, October 21, 2008

Find Your Way

While it wasn't probably wasn't included in design concepts at the time, hypertext is a choose your own adventure. The back button on browsers is a hell of a lot more painless than keeping one whole hand of fingers marking the pages of your last decisions, which is limited to five. The internet is one giant CYOA. Sometimes you die. Sometimes you find goatse. Sometimes you make it out alive.

I've actually done a proper one before, ish. I wrote out a html maze. Mapped it out on grid, inserted random numbers and lines, made sure there was actually a path from beginning to end, and then wrote one html page for every grid square, and made sure they all matched up, no matter what direction you came from. That was on geocities (anyone remember that?) back in 1996. YES. THAT IS HOW LONG I'VE BEEN FIDDLING WITH MY JUNK ONLINE.

Blogger being set up the way it is, I don't have the means of setting up a true, stand-alone static CYOA. Well, I could, but it'd be right pain in the ass getting all the urls set up.

The restrictions of doing a sort of live-action CYOA (a LARP CYOA? LOL? WTF?) worked to my advantage in this case. With each stage being rolled out once a night, the means of turning back, reneging a decision and choosing an alternate path are removed, which takes a huge load off. The fact that players won't see anything but the one path they choose is also a load off, as I discovered.

Here's the map of the first;

Which, as you can see, was a process of trial and error and I actually made it so I knew what I was doing, not you. And I still had no idea what I was doing.

At first I was skeptical on the idea; writing seven choices with branches, is that seven squared? Do I have to write 42 events when they'll only see 7? That's a lot of writing no one will see. To cut down, I started angling choices so that two different responses could lead to the same outcome - the ButlerBot completely ignoring you was useful for that. Using a scenario that was bare-bones simple - a conversation with only two participants and very little activity - was vital as well.

I also learned that at each level, the same information needs to be revealed, regardless of the decision that brought the reader there and what actually happens. Which I totally screwed up with the whole Lords of Heegurkurkur taking over the world thing.

Originally, there was only one way outcome out of all choices in all branches that saw you become a superhero, but I changed that at the last minute, for the hell of it.

Having learned all that, I was better prepared for the second one. The trick is actually to work backwards - establish the end point, and then deconstruct the steps to get there. Hence the narrative in this one made flowed significantly smoother. I also worked around having two streams with two sets of decisions by writing responses to each choice, and then having an overall 'next step' which all responses fed into, thus keeping it from branching out all over the place. Whether or not the pirate arrr!ed, dodged or shot the cowboy, the outcome was the same.

That said, bringing the two streams together meant I had to wait till the last night to actually write the end, and discovered I didn't want to do terrible battle with either, 'cause I liked them.

The last rule I couldn't break was inserting any choice that would see the reader die before the alloted time was over. My most powerful memory of reading CYOA in primary school was picking the book up and being dead within three page turns. Which kinda ruined the whole book and I didn't seem much point trying again after that. Although I would have liked to include some sticky deaths. It'd be easy to insert some, now I think about it. Just reveal you're dead, go back and repost according to the runner up choice. Hmm.

Anyway, there you are. I learned it so that you may use it. Now someone else write one! I want a go!


  1. You can also do your chart on Excel for easier edits (if you want to add/remove branches).

  2. True dat. I tend to think better in long hand though, when I'm doing basic outlining.

  3. Thanks for sharing your process -- I find it fascinating. I always loved CYOAs and hoped in vain that somebody would write a good one for adults. The closest I got was an literary erotic one by Alina Reyes, but it was very short -- really wham, bam, thank you ma'am. Have you ever looked at text-based game software?

  4. Not promising anything but I got all excited and did myself an outline.

    ("What, you need an invitation?"
    "Apparently so")

    The goldfish should be free to boost up my prose quality when I finish exams in early November. (But if I'm not promising anything in the way of this turning out to be more than vaporware I'm certainly not promising anything in the way of quality.)

  5. I can't say I've looked into it, no, but I've toyed with the conversation engine in the Douglas Adams PC game Starship Titanic a fair bit. That's a wonderful piece of programming. Didn't get that far in the game, as I was too busy in conversations trying to catch the characters out.

    I wonder if there are any proggies out there that just let you enter the world. Hmm...

    I am excited, Mr Miller and Goldfish! And good luck with exams, too.