Crates.io | inkling |
lib.rs | inkling |
version | 0.12.5 |
source | src |
created_at | 2019-07-10 23:59:09.96728 |
updated_at | 2020-09-11 11:52:52.851861 |
description | Limited implementation of the Ink markup language. |
homepage | |
repository | https://github.com/pjohansson/inkling |
max_upload_size | |
id | 148191 |
size | 651,220 |
Partial implementation of the Ink markup language for game dialogue.
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
serde
as an optional dependency to de/serialize stories, probably rand
as maybe-optional in the future.Fewer features than Inkle's implementation of the language
Untested in serious work loads and large scripts
Not even alpha status, what is this???
Currently and likely for the foreseeable future the feature set is very limited compared to Inkle's own implementation. Available features are:
serde
Likely candidates for further development:
Difficult features for which I doubt my skill level to implement:
Advanced flow control: tunnels and threads
Verifying that all story branches are complete
See the documentation or provided example for a minimum viable story processor. Enable serde
de/serialization by activating the serde_support
feature. This feature derives Deserialize
and Serialize
for all required structs.
Writing this has mostly been for fun and to create a simple game, hence the lack of features. Contributions are welcome! See CONTRIBUTING.md for more details.
Inkling is copyleft, licensed under the Parity License and Apache-2.0. See LICENSE.md for more details.