8 ms·
Ink 1.0 – Open-source scripting language for interactive narrative
- jeeva 6y agoTom Kail (of Inkle) did a neat workshop on writing stuff in Ink at a recent coding festival, if anyone wanted to try it out - https://www.youtube.com/watch?v=SKlz2hcy8wU https://www.youtube.com/watch?v=SKlz2hcy8wU
- travisluis 6y agoHow does this differ from Twine?
- totetsu 6y agofrom my blog notes on ink see also: " pubcoder[1] or apple ibook(killed) or kotobee or Twine which is from the Interactive Fiction Technology Foundation. .. and used to make this cool interactive browser experience burnt matches. more here" 1 https://docs.pubcoder.com/new/pubcoder_widgets_intro.html https://docs.pubcoder.com/new/pubcoder_widgets_intro.html 2 https://www.kotobee.com/blog/how-create-interactive-ebook-guide/ https://www.kotobee.com/blog/how-create-interactive-ebook-gu... 3 https://twinery.org/ https://twinery.org/ 4 https://pippinbarr.com/games/burntmatches/ https://pippinbarr.com/games/burntmatches/ 5 https://www.pippinbarr.com/2016/11/29/burnt-matches/ https://www.pippinbarr.com/2016/11/29/burnt-matches/
- nrjames 6y agoAlso Yarn and Yarn Spinner https://yarnspinner.dev/ https://yarnspinner.dev/
- nottorp 6y ago> and used to make this cool interactive browser experience burnt matches. more here Does this "cool interactive browser experience" only work in Chrome? I tried it in firefox and when i click on "snow" nothing happens.
- totetsu 6y agoIt seems to work kind of okay in Firefox mobile. you've gotta click on the colored snow.
- hackily 6y agoCongrats on 1.0! I recently started developing a game in my spare time, and discovered Ink, which has tremendously simplified development of conversations and managing conversational state. I've found Ink to be quite flexible, If someone wanted to, they could manage their entire game state with Ink. Live recompilation of my ink script in Unity will be very helpful!
- leejoramo 6y agoCan anyone compare Ink to Inform? I played with Inform many many years ago and have always wanted to return to it.
- kd5bjo 6y agoI haven't played with either of them much, but they seem to take two fundamentally different narrative approaches. Inform is primarily simulation driven: You describe a world model. Every user input translates into some action that affects the world, and the world changing produces relevant output. Ink is primarily narrative driven: You write the text as a branching story, with a set of explicit options for each branching point. Variables can be read and changed arbitrarily, but have no meaning other than how the narrative uses them.
- Multicomp 6y agoInform 7 is used to make Zork-style games. GET covid. GO WEST etc. Ink is more comparable to Branching narrative software like Twine, or Visual Novel software like Ren'Py.
- irrational 6y agoI am familiar with inform and zork (which auto-corrects to dork ;-) but not with how that is different than branching narrative software. How are they different or similar?
- megameter 6y agoBranching narratives are like Choose Your Own Adventure books. You can get 80% of the way to what Ink does with a carefully programmed static website. But this is an environment designed to author that, and to publish to game engines as well. The main competition is Twine, which is more focused on a self-contained deployment. Twine also got a huge update recently with its "Harlowe" theme supporting storylets - scenes that trigger from a pool or "deck" based on logic you program.
- jccalhoun 6y ago
- jackalo 6y agoMaybe I'm just old at this point, but I honestly thought this was a reference to Inkscape which had it's v1.0 about a year ago, and I became very confused.
- jackalo 6y agoJust wanted to quickly add that I am in no way trying to steal the thunder from this news, just referencing where my brain had gone. All that aside, this looks like an incredible language to use for some of my own projects. I have always been a fan of text based adventures, and have played MUD's off and on for at least 25 years at this point. Maybe I can put this language to good use. :)
- asimpletune 6y agoWow this is awesome. I think it would be really cool to write some documentation or more interactive education using this tool.
- 094459 6y agoI have been thinking the same thoughts...now I’ve seen ink I might need to give it a go
- indigochill 6y agoI wrote my "portfolio" page[1] in a choose-your-own-adventure style with Ink. Documentation would be pretty cool, might experiment with that at some point. [1]https://maxsond.github.io/ https://maxsond.github.io/
- daniellarusso 6y agoYour soundcloud link did not work for me.
- indigochill 6y agoWhoops, thanks for the heads up. I'd changed my Soundcloud profile name and hadn't updated the site. Fixed now.
- maneesh 6y agoThis is so cool! Is your site open sourced ?
- indigochill 6y agoThanks! It's just a Github page, so you can see the source at https://github.com/maxsond/maxsond.github.io/ https://github.com/maxsond/maxsond.github.io/ homepage.js is the translated Ink script after processing by inkjs (from Inkle) ink.js is a bunch of Inkle magic main.js has some custom choice behavior I wrote for things like opening browser tabs when you pick certain choices, as well as some other stuff. I actually didn't commit the original Ink script to version control, and I'm kicking myself for that now.
- xrd 6y agoIs anyone doing something similar , or using this as-is, with comics and graphic novels? Is this a different form of narration when it is applied to video games? I'm curious if there are discussions about how this is different or the same.
- NortySpock 6y agoCheck out Ren'Py
- mellosouls 6y agoVery cool. I wonder if there is an avenue for using this with something like GPT3; be interesting perhaps to see what it might come up with, or how it might add speed/scale to the process in some cases?
- chrisweekly 6y agoThis looks _amazing_! Thank you for sharing!
- dang 6y agoPast related threads: Ink – Scripting language for interactive stories - https://news.ycombinator.com/item?id=26147329 https://news.ycombinator.com/item?id=26147329 - Feb 2021 (15 comments) The Intercept (2012) - https://news.ycombinator.com/item?id=23244812 https://news.ycombinator.com/item?id=23244812 - May 2020 (4 comments) Writing web-based interactive fiction with Ink - https://news.ycombinator.com/item?id=21794981 https://news.ycombinator.com/item?id=21794981 - Dec 2019 (9 comments) The Intercept - https://news.ycombinator.com/item?id=21538414 https://news.ycombinator.com/item?id=21538414 - Nov 2019 (1 comment) Ink – inkle's narrative scripting language - https://news.ycombinator.com/item?id=16925588 https://news.ycombinator.com/item?id=16925588 - April 2018 (22 comments) Ink: the scripting language behind 80 Days and Sorcery - https://news.ycombinator.com/item?id=11269782 https://news.ycombinator.com/item?id=11269782 - March 2016 (18 comments)
- offtop5 6y agoI absolutely love the ink team, for releasing this. They have a fairly decent Unity which is free and is more than good enough for creating basic narrative games. It would still probably be a good idea, to have a good grasp of unity before integrating it though
- solson4 6y agoVery cool. I’m working on an interactive fiction engine in my spare time, and it’s interesting to see how someone else chose to manage the complexity that exponential branching starts to cause. Their concept of knots makes a lot of sense for a video game with narrative “hubs”. Definitely like the text based approach, the flow graphs that other engines use look like they get really messy really fast.
- psyklic 6y agoInk is great, and very extendable. I used it as the scripting engine for a machine-learning-powered chat bot.
- gHx8 6y agoThat sounds amazing! Where would be a good place to start digging into chatbot tech? Specifically, I'm wondering how to dynamically rewrite scripted dialogue and it is a deceptively deep topic.
- psyklic 6y agoThere are two types of chatbots -- unreliable freeform ones (e.g. GPT-3) and reliable script-based ones (e.g. Alexa). I believe that what you're looking to do (dynamic rewriting) is moreso an active research topic! The script-based chatbots are very similar to those in the 80s, with one major addition -- the options at each choice point are now "intents" instead of exact text (e.g. "the user intends to order a taxi"). Machine learning is then used to classify whatever the user says/writes as an "intent," then the script is followed to the next choice point. Here is a nice Java framework that uses Ink to drive a script-based chatbot similar to Alexa: https://github.com/rabidgremlin/Mutters https://github.com/rabidgremlin/Mutters
- WhatIsDukkha 6y agoLooks like there is an actively developed godot integration - https://github.com/paulloz/godot-ink https://github.com/paulloz/godot-ink and a emacs major mode - https://github.com/Kungsgeten/ink-mode https://github.com/Kungsgeten/ink-mode There is an lsp implementation - https://github.com/ephread/ink/tree/language-server/inklecate/LanguageServerProtocol https://github.com/ephread/ink/tree/language-server/inklecat... Seems like I should spend some time with ink!
- TheCraiggers 6y agoAwesome. When I noticed the Unity plugin, I came here hoping there would be somebody asking about Godot. Thanks for the link!
- cesarizu 6y agoThis is also a good implementation in pure gdscript: https://github.com/ephread/inkgd https://github.com/ephread/inkgd
- winrid 6y agoPlease let me zoom or have the ability to click to open the image on mobile...