Tag Archives: StoryNexus

How Branching Narrative is Useful Outside of Game Design – Building a Chatbot

While I was at work the other day, I came across a post by the Social Media Examiner titled “How to Create a Facebook messenger Chatbot.”  After explaining some basics on what a chatbot is and how it can benefit your business, Social Media Examiner gives some basic definitions and jumps right into how to build one with Chatfuel.  This was the picture that very specifically caught my attention:

Picture of chatbot block made of the card and button.

This image is linked from Social Media Examiner’s original post. Their caption: “This is a visual representation of the placement of blocks, cards, and buttons in a chatbot.”

My immediate reaction upon seeing this picture was: “This is branching narrative!”

Don’t believe me?  Check out this example from the Storynexus Reference Guide:

An example of a Storynexus Storylet.

Storylet example that appears in the Storynexus Reference Guide

Out of the bit of branching narrative programs I have worked with, I have arguably the most experience with Storynexus; that’s why I immediately saw the parallel between it and Chatfuel.  Under the root Storylet, the branch happens, and then you program in whatever result(s) you want.  Storynexus is a little more complex, but you can still see how it has the card and button block structure.

Here’s one more example.  This is a Chat Mapper piece I put together for Apocalypse Madness back in January 2015 called “Village Woes“:

Chat Mapper output showing Village Woes

Chat Mapper output for Village Woes

Once again, you can see how it’s got the basic card/button structure (particularly at the beginning of this story, where it has the initial split in choices).

So after I had the realization that a Chatfuel chatbot is created very much like branching narrative, my next thought was “I can make one!”

And so I did!  I got permission from CILU’s Station Manager to build one for CILU’s Facebook page.

It took me about five hours to build the menu system of the chatbot, which is its basic backbone.

Block structure of the CILU chatbot.

As you can see on the left side of that picture, the bot starts out with two built-in blocks (the welcome message and the default answer).  Then you can make however many blocks you want (my current bot has 34 plus the two built-in ones).  On the right side, I’ve got the block titled “Main Menu” open as an example.  I made the card a text card (all of my bot’s cards are currently text cards) and gave it three buttons that link it to other blocks.  I wanted to have five buttons at the bottom of this menu, but Chatfuel limits you at three buttons per card.

Once that was done, I asked friends and family members to test the bot so I can refine its AI.  The AI is the one thing that branching narrative from Storynexus and Chat Mapper did not prepare me for.  But that’s okay – Chatfuel has a really easy to use interface.

AI Set up for CILU bot on Chatfuel

You click on the big red button (on the left side of the picture) to add an AI Rule.  Then you get to tell the bot what to reply with (either text or one of the blocks you’ve already programmed) when the user says something to it.  So in this example, if the user asks what’s on the air right now, I’ve got the bot set to reply with text linking the user to the CILU schedule (and also reminding them how they can listen to the station).

The AI has been quite fascinating to build.  I programmed in phrases that I thought people would say, and have been adding more and more as people have tested it.  For example, someone asked to “speak” with our station manager, but I hadn’t programmed it to recognize that command (if they had asked to “contact” the station manager, the chatbot would have been fine).  So after that interaction, I went back into Chatfuel and added more phrases to better connect people with the information they’re looking for.

Another example was the simple act of greeting people.  When I originally asked people to test the chatbot, I hadn’t thought about getting it to say things like hello or goodbye.  But now it can!

What’s really neat about the whole thing is how the chatbot has evolved over the last week.  When I first asked people to test it, the chatbot was a very rigid menu system that you click through to get to the information you wanted.  After a few days of refining, the menu system is there if you need it (which the default answer is quick to remind you of), but the chatbot is able to get you the information you want by just chatting – no menu required!

Of course it’s still in need of refinement, since it failed with its first real customer.  But the more people who test it by asking it things, the better I’ll be able to program it.  If you’re interested in testing it, or just want to see the chatbot in action, you can access it through this link (but you’ll need Facebook Messenger), or by contacting the station on the CILU Facebook page.  And feel free to leave me any comments or feedback – it’ll help me with refining the bot!  🙂

Advertisement

Leave a comment

Filed under Game Development, Tools, Updates, Writing

Hello 2016!

Happy New Year everyone!!!  2015 was overall a really good year for me and I’m rather sad to see it go.  But hopefully 2016 will be just as good!

Here’s all the things I said I wanted to do in 2015:

  1. Read 50+ books off of The List -partial success.  I read 51 books this year, but only 25 off The List.
  2. Stay in shape – I’m going to say failure.  I did get back to swimming, but really late in the year.
  3. Get 2+ of my worlds that need building up to the point Imezza is currently at – success!  City of the Dead and Faeriia are not done but I can easily write stories set in them.  That sounds like the point Imezza is at to me!  🙂
  4. Finish the screenplay I started – failure because this was going to be a gift for a boyfriend who I broke up with in March (so I stopped caring about it).
  5. Write the Grief Project  – success!  A first draft was completed in my NaNoWriMo blob!
  6. Write a story a month for Apocalypse Madness  – success!  I actually wrote 13 stories plus wrote something with Chat mapper for Apocalypse Madness last January.
  7. Build a game – partial success. After Storynexus stopped being supported I switched back to RPG Maker (which meant switching to a different game).  Tears of the King is not completed, but I’m still working on it!
  8. Figure out Chat Mapper – I’m going to list this as a partial success because I did write that Apocalypse Madness thing in January.  But that was the last time I even looked at the program, so I don’t want to say it was a full success.
  9. Take a Lego Picture a month  – failure.  I stopped taking as many pictures in general this year and miss it, but I just haven’t had time!  😦
  10. Fix up my Red Bubble profile – I actually did do this early in 2015.  So it’s a success, but I haven’t added anything to it since then.
  11. Edit my NaNoWriMo 2012 book – failure.  Lack of time.

No wonder 2015 was a good year for me – out of 11 goals for 2015, I completely succeeded with 4 of them (and 2 of them were quite sizable – writing a story a month for Apocalypse Madness and getting two worlds to the detail level of Imezza!)  I also made a valiant effort on a few others, with only 4 as outright failures!  What’s more, I actually succeeded on more writing projects than I did last year!  (I think my main accomplishment last year was to build Imezza).  So 2015 really was a good year! 🙂

So let’s look to 2016.  This year I want to:

  1. Finish Tears of the King.  That should obviously go without saying.
  2. Write four polished short stories.  I’m very proud of the work I spent writing for Apocalypse Madness this last year.  But Apocalypse Madness is all about writing first or maybe second drafts.  So this year I want to put the time into writing more quality pieces, not quantity.  I’m planning on perusing Duotrope for markets that I’m interested in and writing a story every quarter for one.
  3. Take a Lego Picture a month (and actually post it in a timely manner). I can do it!
  4. Eat healthier.  I’ve been so busy over the last several months in particular and I feel unhealthy.  So 2016 is the year I’m going to try to be healthier.  I’m just listing this here as part of my goals, but don’t worry, I’m breaking this down for myself in better detail!
  5. Be more active.  Going hand in hand with number 4.  Also breaking it down for myself into better detail.
  6. Read the anthologies I own.  Looking through my list of books, i have over 25 anthologies of short stories on there!  So this year I’m going to focus on getting through most of those (if I make it through 20 I will consider this a success).  As a side note, I’m going to mark my Goodreads Challenge as reading 40 books for the year. So that means I hope that half of my challenge will be made up of short story collections.
  7. Build 1 of my worlds that need building.  I don’t really need to do this this year, but I know there are two main worlds that need building (well, one world, one science fiction setting that in reality will be multiple worlds).  If I can get through one more right now, that’ll only help me more in the future, right?  🙂
  8. Edit my NaNoWriMo 2012 book.  This is the same as last year – I want to make it into a coherent narrative that I can share with people.
  9. Take apart my NaNoWriMo 2015 blob.  This sounds a bit silly, but I’ve already put it off for a month.  The blob is made up of worldbuilding, Grief Project, more worldbuilding, and several other, smaller things (stories, a blog post, etc).  I need to take it apart and organize everything (particularly the worldbuilding and Grief Project.  The smaller things are pretty much self contained inside of it).
  10. Work with Chat Mapper. This poor goal has been on my lists for the last few years (since 2013!)  It’s time to actually do some work with branching dialogue!

So there we have it – my goals for 2016.  The first five goals are really my priorities for the year.  Wish me luck as I work to accomplish everything!

Leave a comment

Filed under goals

#WriteFriday – August 14th

I decided to put what I’ve been calling my Untitled StoryNexus Game on hold.

This wasn’t an easy decision.  I’ve spent the last few months working on this game.  And now that a good chunk of the background work is done, I’ve really been looking forward to building it.  But after I made the decision to build the game in RPG Maker, I realized that I haven’t actually touched RPG Maker since 2013 when I put the RPG Maker game I was developing at the time on hold.  That game, which I called Tears of the King (apologies, I never actually titled it anything on this blog before now), was put on hold when I was going to make “Grassy Fact” with friends (which unfortunately also did not happen).

So instead of building the game I’ve been working on for the last few months, I decided it was a better idea to go back to Tears instead.  Tears was supposed to be a much more basic game than I envision Untitled being.  So it makes sense to go back and finish the old game before jumping into building the new one.  Building Tears will help me get reacquainted with RPG Maker VX Ace.  Of course, going back to Tears has other advantages too, like the fact that I already started building it back in 2013!  Sure, I still have a lot of work to do on it.  But I’m not starting entirely from scratch (a couple of maps are already built).

So with that in mind, I’ve spent this week trying to locate my old notes for Tears (which thankfully I managed to do – I had some plans in a notebook, and also a few sketches of maps on loose paper).  The loose papers are now organized, and anything that I deemed important has been typed up into a Google doc so it’s all in an easy to access place.  I love using Google docs for what are basically my game design documents because I can access them from my phone when I’m away from my laptop.

Then today on #WriteFriday, I started thinking through the world that Tears takes place in.  I don’t want to make anything too fancy (especially because I don’t want to get stuck doing too much background work on this game, too), but I will do whatever I have to to make sure this game works story-wise to my satisfaction.  Luckily I already started some of the background stuff prior to putting this game on hold.  So tonight I was working on fleshing out more of the world, figuring out why things are the way they are (and how they got to the state they’re in).

I’m going to be working on Tears some more tomorrow too.  I’m thinking I’m going to start working on my characters, but we’ll see!

Leave a comment

Filed under Game Development, Tools

No More StoryNexus Game

On Friday, I hit a totally unexpected snag.  I went to the StoryNexus website with the intention of poking around and starting the design portion of my game.  And I couldn’t find the login to the site!  I went looking around online to see if there was an announcement that the toolset was being discontinued, but couldn’t find anything.  So at that point I tweeted to Alexis Kennedy, CEO and Creative Director of Failbetter Games (the company that created the toolset), asking about it.  Earlier today, he replied:

 

 

After hearing that (and in all honesty, from the point I discovered the login was missing), I began to fear the worst for the toolset (and, by extension, my game).  And this response confirmed my concerns.  I knew Failbetter was no longer directly supporting StoryNexus (it’s been in maintenance mode for almost two years).  But it was my understanding people were still free to use the toolset.  I relished the challenge of creating a game for a toolset that was somewhat difficult to develop for.  But now, if Failbetter is not recommending people use StoryNexus anymore, I am hesitant to continue developing a game for the toolset.  I could keep developing the game because I did manage to figure out how to login.  But if the creators of the toolset are discouraging people from using it, I don’t think I should start using it now; I’d be worried that the toolset (and any game I was working on) might disappear in the (possibly very near) future.

So with that in mind, I talked the whole thing over with a programming friend of mine.  Together we came up with a solution that I think will work: build my game with RPG Maker instead of StoryNexus.  I’ve wanted to use RPG Maker for awhile, so why not with this project?  I have finished a lot of the background work, but haven’t done a lot with the game design yet, so now is pretty much the perfect time to switch to RPG Maker.  With the change in toolsets, the design of the game is understandably going to change quite a lot; I’m going to end up with a much more visual game rather than the text based one I was originally envisioning.  But that’s okay – I think this setting will be a lot of fun for players to actually be able to walk around and explore.

I’m not going to lie though, I am a bit sad about this change.  On Friday I spent a fun hour working with the StoryNexus character creation screen, where I figured out a fun way to make a character that worked very nicely with the game I had in mind.  It’s a shame to lose the little things like that.

Leave a comment

Filed under Game Development, Tools

#WriteFriday – August 7th

Holy crap – it’s Friday and I am actually writing!  I feel like I’ve barely done any writing, particularly on a Friday, all summer long.  Life has been extremely busy (in a good way).  Last weekend I didn’t end up doing any writing while out at camp.  But I read Howl’s Moving Castle, (which was an extremely good book!) making the weekend fun and relaxing (if not exactly productive, but that’s okay)!

This week was also busy because I started a temporary job at my work.  For the next few months I have a few more hours, plus an actual schedule!  It’s going to be really nice not being on call for a few months (and to have most weekends off!)

In the middle of all this, though, I’m honestly missing having writing time.  So even though I had some things I wanted to do around here first, I decided to compromise and do some of the housework, then switching gears over to writing for at least a few hours.  So with that in mind, I’m first planning on going over my various notes for my StoryNexus game.  I want to see what I’ve got so far because in all honesty, it’s been awhile since I’ve really looked through everything and I need to give myself a refresher.  Hopefully I can also consolidate everything I’ve written onto my master Google doc.  Unfortunately this also means I need to spend a bit of time tracking down all the loose notes I’ve written randomly over the last month or so.

Once that’s done, I’m not entirely sure what’s next.  I’ve mapped out the island, including the city.  I’ve thought about mapping out the tower, but I don’t think that’s entirely necessary at the moment.  I wanted to build a few more NPC’s for each faction, but I don’t know if I actually NEED them.  So unless something pressing comes up as I read over everything, I think I can move away from the background stuff for a bit and actually start fleshing out the story.  Either that, or do a bit of work on the game design (although I may hold off on that for now…I’d like the story in a bit better shape and also want to play through some more StoryNexus games to see what their ends are like).  Whatever happens, I’m pretty excited to be moving away from all that background work I was doing!

Leave a comment

Filed under Game Development, Tools, Writing

#WriteFriday – July 31st

The last few weeks have been really busy and I haven’t done a lot of writing period lately. Last Friday went down the tubes because I attended a funeral. The rest of the weekend was taken up with summertime plans (like swimming and going to a local festival).

This week wasn’t much better. But I did fit in a bit of writing. Unfortunately I didn’t do any work on my game. But I did get my July Apocalypse Madness story written. I wrote it while hanging out in the backyard with my cat. Then last night (after midnight, so it was technically Friday) I typed the story up and edited it. In case you were wondering, it is based off one of the ideas my brother and I came up with a few weeks ago.

This weekend I’m heading out to camp. I’m not sure how much writing I’m going to get done (mainly because I’m planning more on reading), but I will (of course) have my notebook with me. Whatever happens, I am hoping to get back to working on the game next week. 🙂

Leave a comment

Filed under Game Development, Tools, Writing

#WriteFriday – July 17th

It’s summertime, so I’m not going to lie – I didn’t get any writing done this Friday. But that was okay – on Wednesday, my brother and I went on our own sort of writing retreat at a provincial park.  I admit, I didn’t spend the entire time writing.  We wandered around for a bit, I went swimming, and ended up reading for a bit (in case you’re wondering, I’m reading The Martian, which is really awesome!)  But I still managed to write a few more NPC’s for my (still untitled) StoryNexus game project.

Then on Saturday, I was hanging out with my brother for a bit again.  I was originally planning on staying home, but it quickly became apparent that if I did, I was going to waste the night playing Hearthstone.  So I went to his place.  Once again, I spent more time reading (because The Martian really is that awesome), but I did get a bit more writing done.  I figured out the name for one of my NPC’s (I wanted a gender-neutral name, and wasn’t able to come up with anything I liked on Wednesday when I didn’t have the help of my laptop).  And then I also planned out what I would be doing next (which is going to be fleshing out some of the stories a bit more before building more NPCs – I know I’ll need a few more, but I’m not quite sure how many yet).  So hopefully I’ll get that stuff figured out this week!

Oh yeah, and my brother and I came up with some ideas for Apocalypse Madness.  I realized that the month’s already halfway over, so I need to get writing something for that blog, too!

1 Comment

Filed under Game Development, Tools, Worldbuilding, Writing

#WriteFriday – July 9th

It’s about time I got back on track with my #Write Fridays.  So I ended up working more on my still untitled StoryNexus game today.   I decided to work on mapping out the island a bit more.  I wanted a baseline for what the island looked like prior to the events of the game (when the population exploded).  To that end, I figured out what a reasonable population would have been on the island.  It’s an experimental farming facility, which is why it is small but still centred around food production.  Much of the world is automated, but thanks to magic rather than technology.  So with that in mind, the population of the island can easily be a bit smaller than it would otherwise have been.

I also had to figure out what kinds of buildings would be on the island in addition to the Tower and the homes of people.  But once that was done, I made a rough map of what the city (or town, as it probably more accurately is) would look like.  Here’s what I ended up with:Korm Village

Of course, I only remembered the basic shape of the island.  What I drew does not work perfectly with the island map, so I’ll have to redo it (if I need a more accurate layout).  But at this point, this map is good enough.  The Tower is once again in the middle.  The bottom stuff is the airfield, which is attached to both the Terminal and what I have termed the Menagerie (that’s where the majority of the island’s monsters are kept – with monsters being pretty much the equivalent of machines in this setting).  In the town, most of the buildings are apartment buildings that are three floors high, housing four people or families per floor.  By the docks are some warehouses; in between those are the marketplace, which is mostly made up of stalls.  I thought that a European-style marketplace made the most sense for the island (and the setting in general), rather than North American-style big stores.  There’s a darker, bigger square just below the marketplace, which is the police/hospital/fire building.  The island doesn’t have a lot of dwellings and people, so I thought it made sense to have everything in one central location.  A few of the buildings are also things like a bakery (or two), a few restaurants, and a tailor.

So there we go.  It was a successful #WriteFriday where I finally mapped out the town on Korm.  🙂

Leave a comment

Filed under Game Development, Tools, Worldbuilding, Writing

No #WriteFriday on June 19th

Whoops.  #WriteFriday was yesterday.  And I didn’t do any writing!

I ended up going to see Tomorrowland with a friend.  We’ve been wanting to go and see it for weeks.  Unfortunately, for some reason it’s only playing in the afternoons now.  Luckily we were both off, so we were able to see it before it’s gone from the theater.

Of course, once that was over, we ended up hanging out for the rest of the day, leaving me exactly zero time for writing.  Well, there was a bit of time I could have written something.  But I used that to read.  You see, I’m heading to a conference next weekend, and I had a whole list of books I wanted to read before then.  At this point, it looks like I’ll only be finishing one or two more before I get there (which is a few less than planned).  And of course, I want to keep reading.  The book I’m in the middle of is Octavia E. Butler’s Fledgling, which is one of the first super good books I’ve read in a long while.  And I really want to say “screw it” for today and just keep reading.

But rather than do that, I decided to compromise a bit.  I printed out the notes for my StoryNexus game and read them over.  It’s been 3 weeks since I’ve done any work on the actual game, so I thought it was high time to reacquaint myself with the project.  And I’m really glad I did!  I now have a bit of a clearer idea of what I still need to develop (for the background, anyway), and just in general where I’d like to go with it.  Hopefully this will help me get some more work done on it (once I’m finished reading my book, of course).

As a side note, there’s a very good chance #WriteFriday will not be happening next Friday.  I’m heading to a conference and may be the one driving, which will leave very little time to write.  I’ll deal with that next weekend though.  And even if I don’t write on Friday, at least the weekend will be full of writing related activities!

2 Comments

Filed under Game Development, Tools, Writing

#WriteFriday – May 29th

It’s #WriteFriday!  It’s also the end of the month, and that means I need to post a story inspired by this month’s quote to Apocalypse Madness.  Luckily I started a story earlier this week.  That story became “A Bit of a Waste,” which deals with two of the three main NPC’s from the StoryNexus game I’m working on,Caden and Tzalmon.  My original plan was that Caden would be a normal human, rather than the ghostly revenant.  But when I had the idea for this story, it made sense that Caden would be a revenant instead.  It’ll (I hope) add a lot more to the story branches that will center on her.

“A Bit of a Waste” is also the first time I’ve shown off one of the coolest (in my opinion anyway) things about City of the Dead: where zombies come from!  The actual idea (which is from something like 6-12 months ago), is that a zombie and ghost, together are one.  So when you pull the spirit out of someone, their body remains animated but mindless.  Zombies eat brains in an effort to regain what was lost, even though they don’t consciously know what they’re missing.  I renamed the ghosts to “revenants” because City of the Dead is a place where there are lots of spirits kicking around, and I wanted to differentiate these ones from the more natural ghosts that are people who naturally die (their spirits remain until they eventually fade away into nothing).

My plan was to made “A Bit of a Waste” another microfiction.  But it ended up a bit too long for the definition I used last month.  That was mainly because I had a hard time ending this story.  Plus it has some details I really wanted to leave in.  But it comes in at 274 words, which I thought was acceptable.

I’m still not sure what I think of the ending though.  It’s a bit abrupt.  But I didn’t want to spend too much time on it because this story, much like “When Sorry Isn’t Good Enough,” is more of an exploratory piece.  It’s quite possible that details will change as I continue to work on both the setting and my StoryNexus game, so I didn’t want to get stuck agonizing over it.

So once that I posted my May Apocalypse Madness story, I turned my attention to my StoryNexus game.  I’m now at a point where I need to be reading, rather than writing; to that end I read through the StoryNexus Quickstart and Creator Guidelines, before going to play some more with the tools.  I’ll give the Reference Guide a read hopefully later this week

Oh, I also want to note that I made a mistake in terminology – the Always cards are the pinned cards, so they’re going to be the story cards in this game; the Sometimes cards are the ones that appear in the deck, and so they are going to be where the worldbuilding (and grinding, if necessary) will be.

Unfortunately, my internet connection doesn’t appear to be great and certain things in the tool set refused to load (like adding success results to storylets).  So after playing for a bit, I decided to start really planning out some of the stories within my game (on paper, of course – that’s my preferred method for working on early drafts of things).  To that effect, I got the Destiny soundtrack from iTunes, which is going to be my writing music for the rest of the night.

1 Comment

Filed under Game Development, Tools, Worldbuilding, Writing