Thursday, June 15, 2017

Perhaps of interest to Choose Your Own Adventure fans...

Perhaps of interest to Choose Your Own Adventure fans...

This article kind of just rambles on about the structure of several of the older CYOA books.

Originally shared by Tom Domanski

These Maps Reveal the Hidden Structures of ‘Choose Your Own Adventure’ Books

http://flip.it/zJf5d4
http://flip.it/zJf5d4

30 comments:

  1. I remember seeing a similar article a while back; this is a very useful type of analysis for branching game design, both in what to do and what not to do.

    My feeling is that CYOA is now found primarily as Interactive Fiction, mainly the Twine variety. IF and rpg game design has a surprising amount of overlap.

    Now I want to write a gamebook using Twine, haha. It's just a ridiculous amount of work, even if you go basic.
    samizdat.cc - cyoa

    ReplyDelete
  2. If you do create a twine book, don't forget to post it to this community!

    ReplyDelete
  3. Of course!

    I probably won't, though. My first game love is IF; I even wrote my own cyoa engine once (Pythia Oracle is the direct result of experience gained from that). I have a bit of experience with Twine and it's solid!

    But my IF design cycle tends to go try system -> want something more custom -> code up engine -> realize how many chunks of text are required to make a game -> ooh, squirrel.

    My biggest problem is that I love tailoring the game to the player. I want every single choice, no matter how small, to matter. I want the CYOA to be a framework for a real story, a real adventure, not just a collection of random events, and that's just a ton of work.

    Of course, now I have an Idea. Haha.

    ReplyDelete
  4. i'm not familiar with IF (and only recently learned of twine via a comment in this forum, so i have no practical experience with it).

    "ooh, squirrel!"

    i'm all too familiar with that problem :/.

    ReplyDelete
  5. most choices are binary: basically a Bivius RPG framework :D

    ReplyDelete
  6. Thanks for posting this. I was just thinking about how hard it would be to write one.

    ReplyDelete
  7. Clint Egger It's not hard at all! And Twine really is a great medium for it, well, straight CYOA. A gamebook, with stats and mechanics, might be a different story (though I can't imagine with the age of the hobby it's not a thing in Twine). There's also Vorple if anyone's interested in another approach.

    But it's kind of a rabbit hole of theory, and it's such an ancient and well-discussed format it's hard to feel innovative or find anyone willing to discuss it. The positive to that is that there's a lot of theory and practice to read up on out there.

    lino pang Oh, often! That's the area where my interest lies; making it not binary. Or maybe just exploring how not binary I can make it seem.

    Sadly, the work involved grows exponentially as you add more (and less binary) choices.
    vorple-if.com - Vorple

    ReplyDelete
  8. Alto Dizi, I had no idea about Twine or Vorple. Which would be better for making a gamebook like Fighting Fantasy or Lone Wolf?

    ReplyDelete
  9. Alto Dizi Binary systems have always been too badly advertised, even I had this preconception, but then I reconsidered the problem, binary choices have good qualities too, multiple choices are not always an improvement

    ReplyDelete
  10. lino pang I feel like there's a place for both types of choice -- "yes" or "no" is just as valid as "are you mad, bad, or dangerous to know?" in the right context.

    The critical issue for me is meaning; "left or right" means nothing unless I can tell there's a difference before I make the choice.

    Too many of the early CYOA adventures did not make that distinction; "left" might see you eaten by a shark through no fault of your own, or "don't answer the phone" might see you sent to a page that says, "you're boring, go back and choose again".

    The problem is that I have a tendency to get wrapped up in all levels of meaning, from the big "towards success or away from it" to the very small "you picked a light jacket instead of a heavy one, so you'll get a small penalty" -- and that's cool but ends up being exhausting.

    I am really looking forward to dipping my toes back into this, it's been a while and my design philosophy has shifted pretty hard towards the freeform. I think I've mentioned (a few times!) how much the intersection between CYOA and soloing interests me!

    ReplyDelete
  11. Paolo Greco, you may want to join in on this conversation.

    ReplyDelete
  12. Alto Dizi If I grasped the concept, you have difficulties on the quality/magnitude of the options.
    If it is so, I often play Bivius using options linked to a scenes framework (9Qs or others), the climax rule suggests to increase the magnitude/gravity of choices progressively towards the end

    ReplyDelete
  13. Oh nice. Thanks. I've been working on a small DSL for cyoa and I'm embarking on this weird journey

    ReplyDelete
  14. Let me clarify that that ChoiceScript link is a good overview of how such things generally work, but I wouldn't recommend it as a platform based on the non-commercial only license. That is way too much work to put into something not to be able to do what you want with it.

    Paolo Greco What's a DSL in this context? Domain specific language? Have you looked at txt2tags with Textallion by any chance?

    Yeah, it's a weird journey indeed! So much theory and practice and design and so many tools... and the output always looks roughly the same, haha. Definitely one worth taking, though -- there's always room for more.

    If only writing the text were as much fun as programming the code. Story of my life there.

    And a Python option that outputs to a ton of formats:

    github.com - lifelike/gamebookformat

    ReplyDelete
  15. This thing I'm writing supports several multiple choices for each paragraph (I call them scenes) and some automatic rules, so for example if you have enough money you can buy a given thing, and the choice of sending a messenger owl is possible only if you in fact still have the owl

    ReplyDelete
  16. So support for tests and generic variables and soon random tables and dice rolls.

    ReplyDelete
  17. Oh, I forgot, this is only to be played on a computer, not to be printed on paper.

    ReplyDelete
  18. That sounds like a great start! I wrote parsers in Python and in Lua and really enjoyed the process both times.

    It's fascinating how you can have a very simple thing -- nothing more than a page of instructions and a block of text per page -- or a very complex one -- html links, conditional text, location hubs, cycling text, score-keeping -- and it's still fundamentally the same type of game.

    Gamebooks are my "holy grail" or "wobbly tooth" project -- I come back to them every few years with more experience under my belt, but I never quite am satisfied with the result.

    ReplyDelete
  19. Ha, found it!

    github.com - idmillington/undum

    HTML5 cyoa/gamebook framework that explicitly references the Fighting Fantasy books.

    ReplyDelete
  20. Actually I'm using it to make a mashup between a CYOA and a strategy game. A smaller, lowbrow King of Dragon Pass style of game.

    ReplyDelete
  21. Sounds fun! After all, what else is Crusader Kings 2? Haha.

    If you get a chance, undum has virtually every feature a CYOA style gamebook could possibly need (at least in my opinion!) and handles saving very elegantly.

    eta a link to a great twine guide; I think if I were recommending a system this would be it.

    http://www.adamhammond.com/twineguide/

    ReplyDelete
  22. I think there's a big difference between the US style CYOA adventure books which have long paragraphs and relatively few choices and the Euro-syle Gamebooks, most typified by the Fighting Fantasy series (though there were some homegrown series in other EU countries)

    CYOA books always felt vastly simplified to me, whereas FF books had much shorter paragraphs, but more of them (400 being standard for a FF gamebook) and almost every paragraph had a choice to make or a mechanic to use; there were only ever a few obfuscating or filler paragraphs in most books.

    ReplyDelete
  23. Madcat Angrymog That's my feeling too, though to be honest I'm much more familiar with the CYOA "no mechanics" style than the mechanics-heavy gamebook style. It would be interesting to see some of the longer ones plotted out.

    Here's a site with a bunch of different series graphed. The website's kind of a mess so scroll down quite a bit.

    Based on that, I think we can draw two conclusions; one, you're correct, CYOAs had a simplified structure, and two, someone deliberately made the plot graph of CYOA #80 look like a duck for some reason. o.0
    jobybednar.com - JobyBednar.com

    ReplyDelete
  24. undum's documentation is unaccessible :/

    ReplyDelete
  25. No worries, the doc source is in the git repo, under docs/src.

    I spent a bit of time yesterday putting together a rudimentary TweeGo (plaintext Twine) gamebook framework and I'm seriously impressed.

    I could start writing text this moment and the end result would be very satisfactory. That's just majorly impressive.

    As much as I love the elegance of undum I think Twine, especially Twine 2, is where it's at if you're not rolling your own!

    ReplyDelete
  26. As I wrote above I'm rolling my own. I started writing paragraphs today and added random numbers and gated choices.

    Feels good.

    ReplyDelete
  27. Coding something of your own (almost) always feels good :).

    ReplyDelete
  28. My favorite part is the programming!

    The writing part always seems like it's going so well in design but then I have the program and the design done and have to actually put the words down and -- SQUIRREL! Haha.

    If you haven't looked at it yet, the Sugarcube story format for Twine/Twine 2 has pretty much all the stuff I'd want to see in a CYOA parser. I can't access the main site but here's an overview.

    videlais.com - #TwineTuesday: Twine 2 Basics (SugarCube)

    ReplyDelete
  29. Seems good but I'd rather have more control of the environment. If along the development I discover something weird about twine that makes it unusable for what I need I will throw a strop.

    I don't like throwing a strop.

    ReplyDelete
  30. Oh, no, I'm not advocating you use it! I think the custom option is always going to be a better fit when programming up a whole project.

    I'm just saying it's a great resource for what people interested in CYOAs seem to expect from a CYOA engine and might give you ideas for features or techniques.

    For those who might be interested in writing just a gamebook, Twine output is HTML and javascript, which means it can be hosted online or bundled with electron as an app. I did a quick test and it was painless enough to make me wish I liked javascript better, ha.

    ReplyDelete