Limited Rust implementation of the Ink
markup/scripting language for game dialog.
Ink is a creation of Inkle. For more information about the language, see their website.
``` Using Ink you can easily write a story or create a dialog tree.
Branching is very simple[]: <> just start your line with an asterix or plus marker. Want nested choices? Add more markers! * * A branching choice contains all information below it[.] <> of the same level or higher. * * * [I see.] * * Pretty cool, huh? - - Use gather points like this to return all nested choices <> to a single path. * * [Cool!] -> fin
You can organize the story using knots <> and divert (move) to them, like this: -> next_knot
=== next_knot === Simple and fun. -> fin
=== fin ===
Ink is very powerful and has a lot more features than shown here. <>
Do note that inkling
only implements a subset of all its features. <>
Hopefully more in the future!
-> END
```
Currently and likely for the foreseeable future the feature set is very limited compared to Inkle's own implementation. Available features are:
Likely candidates for further development:
serde
Difficult features for which I doubt my skill level to implement:
See the documentation or the provided example for a minimum viable story processor.
Writing this has mostly been for fun and to create a simple game, hence the lack of features. Contributions are welcome!