36 votes

Twine is an open-source tool for telling interactive, nonlinear stories

26 comments

  1. [9]
    lou
    (edited )
    Link
    I have used Twine with the Chapbook format, read much of Sugarcube's documentation, and "played" a bunch of its "games". For better or worse, Twine is a glorified, visual hyperlink generator with...

    I have used Twine with the Chapbook format, read much of Sugarcube's documentation, and "played" a bunch of its "games".

    For better or worse, Twine is a glorified, visual hyperlink generator with a very good visual editor. It makes it very easy to create branching story with zero webdev knowledge. If what you want is the direct equivalent to a basic Choose Your Own Adventure book, Twine have you covered.

    However, if you wanna make something more technically elaborate, maybe with more videogamey mechanics, you will have to go down the JavaScript rabbit hole on your own. Which, I imagine, is totally fine for much of Tildes crowd, but not so much for me.

    Twine is a great interactive fiction tool, with a strong emphasis on the "fiction" part. Most experiences made in Twine are better understood as literature with hyperlinks than as games. That doesn't mean they're bad, but it does mean that you must approach it with the correct expectations.

    17 votes
    1. [2]
      Carrow
      Link Parent
      Thanks for your input! Do you have any favorites? Best ways to navigate Twine works?

      Thanks for your input! Do you have any favorites? Best ways to navigate Twine works?

      4 votes
      1. lou
        (edited )
        Link Parent
        You will find many Twine games on itch.io and ifdb. I wouldn't know how to find the ones I enjoyed the most, they are always so short it's hard to make a lasting impression. Twine games are...

        You will find many Twine games on itch.io and ifdb.

        I wouldn't know how to find the ones I enjoyed the most, they are always so short it's hard to make a lasting impression.

        Twine games are usually short and experimental. They feel like something a poet or a fiction writer would do on their day off. Sometimes they're just literature with clicks. Sometimes they have more tricks. But they are always very literary. I'd say approach it as you would a short story from a new author. It can be great, it can be awful, and it all depends on the writing. A tiny literary adventure, like walking through a library and picking books randomly from the shelves. You get lucky sometimes.

        5 votes
    2. [3]
      mount2010
      Link Parent
      I really like Dialog (https://linusakesson.net/dialog) for creating Interactive Fiction games. It has an easy syntax and makes a lot of sense. If Plain English is better for you, you can also try...

      I really like Dialog (https://linusakesson.net/dialog) for creating Interactive Fiction games. It has an easy syntax and makes a lot of sense. If Plain English is better for you, you can also try Inform 7. It's a natural language programming way to create interactive fiction, but I found it much, much harder than Dialog because of how free-form natural language is. It's kind of hard to make Inform do anything at times. I much prefer Dialog's limited syntax.

      1 vote
      1. [2]
        lou
        (edited )
        Link Parent
        I was actually very inclined to using inform7 despite it's quirkiness. The documentation seems broad and decent enough. The idea of programming with English is not necessarily appealing, it justs...

        I was actually very inclined to using inform7 despite it's quirkiness. The documentation seems broad and decent enough. The idea of programming with English is not necessarily appealing, it justs seems like a powerful tool that will allow me to do whatever I come up with, and there are more forums and people to assist me.

        Dialog seems like a good option too, but I wonder about the documentation. Is it gentle, accommodating, and suitable for beginners? Does it have large community? Something simpler than inform7 is definitely attractive. Can you share something you made in it?

        I'm not a programmer but I make use of open source a lot, and good accessible documentation is paramount to me. I don't wanna use a tool that will force me to make questions over and over, I must have good documentation to find my way around by myself!

        1. mount2010
          Link Parent
          Dialog's documentation is quite good! I'd consider it on par with Inform's in terms of coverage. It has a great deal of examples and there's a reference for most standard library functions. I...

          Dialog's documentation is quite good! I'd consider it on par with Inform's in terms of coverage. It has a great deal of examples and there's a reference for most standard library functions.

          I worked on a fluid library for Dialog once: https://intfiction.org/t/wip-working-on-a-fluid-library/49296. I think a fluid library really shows how Dialog's rule-based system shines and how flexible the language is to model a game world.

          Community wise, it's rather small (Inform is still more popular), but I'd consider it workable enough. There's a subforum on Intfiction with some active members if you need any help.

          Additionally, another great thing about Dialog is that there is a default REPL-like interface (dgdebug) where you can test your game without needing to compile it entirely, with live reload when your source files change. It's really great.

          1 vote
    3. [2]
      awitchandherdog
      Link Parent
      The heavy reliance on JavaScript/CSS is what kills Twine for me. I'm not sure why, exactly. I just found it less intuitive than Ren'Py at the same task of creating interactive fiction. I really...

      The heavy reliance on JavaScript/CSS is what kills Twine for me. I'm not sure why, exactly. I just found it less intuitive than Ren'Py at the same task of creating interactive fiction. I really couldn't find good resources for Twine and I was fighting to get anything working. Granted, I don't know anything about webdev and that probably contributed a lot to my frustration.

      1 vote
      1. lou
        Link Parent
        Renpy is so good. I eventually discovered I don't really like visual novels, but what an awesome, easy to use, well documented program.

        Renpy is so good. I eventually discovered I don't really like visual novels, but what an awesome, easy to use, well documented program.

        1 vote
    4. yonkeltron
      Link Parent
      I love your analysis! I've found myself editing raw Twee with greater success than using the editor. Granted, I've been using Snowman and not Harlowe.

      I love your analysis! I've found myself editing raw Twee with greater success than using the editor. Granted, I've been using Snowman and not Harlowe.

      1 vote
  2. [3]
    introspect
    Link
    If I had a nickel every time I tried to start making a plot-based adventure game, I would have two nickels. I keep on telling myself that I will learn Twine after I have planned everything out,...

    If I had a nickel every time I tried to start making a plot-based adventure game, I would have two nickels. I keep on telling myself that I will learn Twine after I have planned everything out, and it has never gotten further than plan everything out, because I always give up while I am still in the planning stage. Maybe I will revisit my old body Twine one of these days and make good on that promise after I am done with my current project.

    5 votes
    1. lou
      Link Parent
      Hey, tell me about your adventure! Can you share some of the story, the world, etc?

      Hey, tell me about your adventure! Can you share some of the story, the world, etc?

      1 vote
    2. yonkeltron
      Link Parent
      Start writing. Don't start planning until you need to.

      Start writing. Don't start planning until you need to.

      1 vote
  3. [3]
    DangerChips
    Link
    Ink is also an open source choose your own adventure style editor that also allows for stat tracking if I recall. Plus it integrates with game engines directly since it’s used for publishing a few...

    Ink is also an open source choose your own adventure style editor that also allows for stat tracking if I recall. Plus it integrates with game engines directly since it’s used for publishing a few really popular games.

    https://www.inklestudios.com/ink/

    Highly recommend the “80 Days” game.

    5 votes
    1. lou
      (edited )
      Link Parent
      Ink sounds pretty wonderful. I have been favoring inform7 lately, from what I can gather is a complex and sui generis tool that is hard to tame, but capable of some magical things. I like that it...

      Ink sounds pretty wonderful. I have been favoring inform7 lately, from what I can gather is a complex and sui generis tool that is hard to tame, but capable of some magical things. I like that it allows for elaborate gameplay all in the same language, so I wouldn't have to "go down" to another programming language to get things done.

      At a glance, Ink seems way more focused in the barebones of choice-based interactive fiction, I imagine that getting a more game like experience would require me to "descend" into, well, real programming. In comparison to Twine, it seems more adequate for long and complex chains of choices with meaningful consequences.

      Personally speaking, I think my interest in choices is weaning off. I don't know, it's just not as interesting as I previously thought. And I played some of the best choice based games. Maybe a well told on-the-rails, more videogamey story is what I wanna do, and inform7 might be better for that.

      1 vote
    2. yonkeltron
      Link Parent
      Will have to give Ink another try, then.

      Will have to give Ink another try, then.

  4. [4]
    paddirn
    Link
    I've actually used Twine at work for creating a Job aid/wiki, as I was hoping it could be a nice resource for capturing "tribal" knowledge that people tend to collect over time and get a lot of...

    I've actually used Twine at work for creating a Job aid/wiki, as I was hoping it could be a nice resource for capturing "tribal" knowledge that people tend to collect over time and get a lot of unwritten stuff down for ourselves and future work generations. Alas, nobody cares to use it and I'll still get asked about information that's the there in the job aid that I'll tell people about on day one. And so I've stopped caring and just keep maintaining it for myself. I still really like Twine's ease of use, though I've started migrating over to Obsidian, as that has a bit more functionality and does alot of the stuff that I relied on twine for.

    2 votes
    1. [3]
      Comment deleted by author
      Link Parent
      1. [2]
        paddirn
        (edited )
        Link Parent
        Actually, I just realized I was thinking of TiddlyWiki, somehow I confused the two, Twine is apparently, completely different, my bad... well, maybe not so different after fooling around with it...

        Actually, I just realized I was thinking of TiddlyWiki, somehow I confused the two, Twine is apparently, completely different, my bad... well, maybe not so different after fooling around with it for a minute. They both seem to do similarish things, Twine has a nice interface, but seems more geared towards story-telling, and not so much a wiki, though you could probably still use it for that if you wanted.

        3 votes
        1. lou
          Link Parent
          I was actually thinking it was pretty cool that you made a text adventure for your job!

          I was actually thinking it was pretty cool that you made a text adventure for your job!

          1 vote
  5. Bonehead
    Link
    About 7 years ago, after a layoff, I was bored and wrote a story telling bot that worked over Kik when it was still around. It would present a block of text, and then present options for the...

    About 7 years ago, after a layoff, I was bored and wrote a story telling bot that worked over Kik when it was still around. It would present a block of text, and then present options for the player to choose that would change the story depending on what the player picked. I had plans to build an interface to write stories easier and just feed it into the software. I only stopped working on it because I got a new job that took up most of my time. That software was basically this...and now I really regret not continuing work on it. I knew this was a good idea. Now it's too late.

    1 vote
  6. [2]
    unkz
    Link
    How does it compare to RenPy? Is it basically the same but with JavaScript?

    How does it compare to RenPy? Is it basically the same but with JavaScript?

    1. yonkeltron
      Link Parent
      Seems more of the literary persuasion that RenPy.

      Seems more of the literary persuasion that RenPy.

      2 votes
  7. [4]
    CannibalisticApple
    Link
    I actually learned about Twine in a coding class. The instructor introduced it as a way to help familiarize ourselves with Javascript while still being fun. I need to practice coding again, so I...

    I actually learned about Twine in a coding class. The instructor introduced it as a way to help familiarize ourselves with Javascript while still being fun. I need to practice coding again, so I should probably try it again.

    That said, it wouldn't be my first choice for interactive fiction. It's a bit too simplistic for my own tastes. Someone else here mentioned Ink, and I used that one for my capstone project. It's still text-based, but has more you can do than with Twine. For instance, you can store variables (like stats, money, clothing, etc.) and expand them.

    One other tool I remember reading about while choosing an engine for the capstone is Yarn (Yarn Spinner?). I don't remember anything about it though, so if anyone is more familiar with it, feel free to share! A quick search says it was used for A Night in the Woods and A Short Hike, among other games. I might have to look into that one again actually!

    1. [3]
      eladnarra
      Link Parent
      Can you not store variables in Twine? I've seen folks set strings and integers and such. Or does Ink have more specialized variables for money and clothing?

      Can you not store variables in Twine? I've seen folks set strings and integers and such. Or does Ink have more specialized variables for money and clothing?

      2 votes
      1. CannibalisticApple
        Link Parent
        I just double-checked, and you can indeed store variables in Twine. It's been a long time since I used it, so I forgot. Looking up screenshots did jog my memory a bit though, and I prefer Ink's UI...

        I just double-checked, and you can indeed store variables in Twine. It's been a long time since I used it, so I forgot.

        Looking up screenshots did jog my memory a bit though, and I prefer Ink's UI over Twine's for an extended project. Twine uses a node-based design, which can get messy and requires you to open the individual nodes to see the text. It feels like it may be better-suited for spitballing and the idea stage than a full project.

      2. lou
        Link Parent
        You can store variables in Twine but it's not very suitable for anything too complex. But, if you're willing go your own way with JavaScript, you can do whatever you want.

        You can store variables in Twine but it's not very suitable for anything too complex. But, if you're willing go your own way with JavaScript, you can do whatever you want.