hank

Narrative scripting language for HaxeFlixel games based on Inkle's Ink engine


Keywords
cross, game, ink, interactive-fiction
License
MIT
Install
haxelib install hank 0.0.8

Documentation

hank

Portable narrative scripting language based on Ink.

Build Status

Hank is a more portable answer to Inkle's open-source Ink engine. It is currently just a proof of concept, but you may use it at your own risk.

Supported targets:

  • JavaScript
  • C++
  • Neko

Comparison with Ink and Inkjs

Feature Ink Inkjs Hank
Well-maintained/Production-ready Yes Mostly yes Maybe someday--probably never
Recommended external engines Unity HaxeFlixel
Ease of use Comes with the Inky editor, gives syntax hints. Thriving, helpful community. Easily embeds in web-pages. Partly supported by Inkle. Stricter syntax, no official editor. Only understood by one other person (for now)
Flexible scripting Powerful but bulky embedded scripting system I'm not sure Uses hscript module to allow full Haxe expressions inline without scope bloat
Open-source purism Tightly coupled with Unity Compatible with the Javascript webdev ecosystem Death/bankruptcy before closed-source dependencies
Automatic story testing None None Write expected transcripts to easily test your story's output given sets of choices
Playthrough transcript exporting None None Output a transcript to a file while playing your story. Generated transcripts are compatible with automatic testing.
Toolchain completeness Inky & Unity plugin use the official compiler to recompile automatically while you edit Relies on running the official C# compiler before each time compiling your webgame Parses and runs entirely at runtime without external compiler
Publishing for Desktop app Supported through Unity Theoretically possible with Electron Coming soon with HaxeFlixel
Publishing for Mobile app Supported through Unity Not sure if possible Coming soon with HaxeFlixel
Publishing for HTML5 Supported through Unity Supported out of the box Coming soon with HaxeFlixel
Publishing for AAA Consoles Supported through Unity Likely impossible Coming soon with HaxeFlixel

As of now, you are better off using Ink or Inkjs for serious gamedev. Hank is good if you're interested in hacking away at a new/leaner system as a side project.

Dependencies

haxelib install utest
haxelib install hscript

Build/Install

TODO

Debug Hank stories

TODO