6 ms·
Creating the rules for it reminds me a little bit of writing a text adventure game from days gone by: ... name: { onEnter: "'What do you want to
by jaymzcampbell 9y ago
Creating the rules for it reminds me a little bit of writing a text adventure game from days gone by:
...
name: {
onEnter: "'What do you want to name your kitten?'",
exits: "'*' ->respond_to_name name=INPUT",
},
respond_to_name: {
onEnterSay: "The kitten purrs happily, I guess it likes the name #/name#!",
},
...
The readme for it is nice and detailed which I always appreciate and it's turned me onto http://tracery.io/ http://tracery.io/, which I'd not heard of but looks like a lot of fun ("A super-simple tool and language to generate text").
- zellyn 9y agoWell, the README directly mentions Twine, which is an interactive fiction authoring system. Although I believe it is further to the “branching story” end of the spectrum than things like Inform and TADS.
- brlewis 9y agoI'm starting to introduce someone to programming and am putting together a MUD-style game in Typescript for them to hack on. I kind of wish that instead of magic strings in JSON this was a JS object where the values could be functions. Introducing more than one syntax for variables, etc., could be confusing at the beginning.
- WorldMaker 9y ago> Creating the rules for it reminds me a little bit of writing a text adventure game from days gone by Interactive fiction has long been the playground for conversation UIs since its inception (Zork's development is even directly entwined in the early history of MIT's AI lab). It's also a useful thing to ask someone starting a bot project: what was the last IF game you played? Have you written one? There's a lot of advances in conversational UI in the IF space that are worth exploring when writing bots, too. It's definitely worth spending some time exploring recent and modern IF games for ideas. I recommend Emily Short's blog [1] for a lot of discussions and examinations of especially conversational UI in IF over the last few decades (that's one of Emily's particular passions). [1] https://emshort.blog/ https://emshort.blog/
- Rabidgremlin 9y agoI have been building/running a pretty successful chatbot for a large corporate for over a year now. We use Inkles Ink to script the conversation flows and maintain state. Works very very well. https://github.com/inkle/ink https://github.com/inkle/ink
- jaymzcampbell 9y agoInkle/Ink looks awesome and a lot of fun - thanks for sharing that! Mutters looks like a really cool use of the tech btw.
- Rabidgremlin 9y agoThanks!
- Diederich 9y agoNeat, so I just read through ink and its tutorial. Can you briefly describe the kinds of things you use it for in a large corporation? Thanks!
- Rabidgremlin 9y agoSure.. it is used to manage all the conversational flows and state for a chatbot. We use it for both branching conversations flows and goal based flows. Ink is simple enough that our content writers can work directly with it and we get clean separation of content and code. The bot itself is pretty interesting. It has 350+ conversation flows, largely dealing with customer service for a business with fairly complicated products and business rules. The bot is plumbed into 7 odd channels and has to deal with channel specific answers (eg if you are in the mobile app or the self-service portal then the answer on how to do something is different from how to do it if you are on the website's home page). Additionally it has to handle regional specific answers, so the bots answers are country specific as well. And it deals with logged in and not logged in states too :) This all makes for an interesting content management problem (40k words) that our use of Ink readily solves. Currently bot has 68% conversation success rate. E.g. 68% of the time he is able to resolve the customers issue which we think is pretty good considering the wide domain we are dealing with and the very strange edge cases the industry we are in has.