Hello, I am an interactive fiction writer and currently developing two fiction works in Unity 5. Though Unity 5 is not for making interactive fiction games, it does support a lot of features like;
- Saving variables (player choices) to external binary files and access on requirement
- Multi platform launching (Android apk, iOS etc.) for finished game
I’ve checked Twine and ChoiceScript for easy implementation as Unity scene text UI layout, and polishing is a nightmare for every scene ! But I couldn’t find the said features in Twine and ChoiceScript.
Are there any other tools/engines with these features?
INSTEAD (with “prefs” module) can give you cross-game variables and cross-platform support (Android, Windows, Mac, Linux, Maemo, *BSD, Windows CE, Symbian, CAANOO; iOS port is currently only for jailbroken devices). Web platforms can use server-side saving, but that’s hard voodoo.
I don’t know a huge amount about this, but have you thought about using ink (github.com/inkle/the-intercept) which might help clarify things.
I have assigned feature code 118 and lump name XGRANGE.BIN for cross-game variables in TAVERN (although the implementation does not yet exist, but it should be easy to implement if anyone wishes to use this feature). TAVERN is open-source and open-specification and is meant to be portable to many other computers, although currently the only implementation is in C using stdio for Linux, and does not implement XGRANGE.BIN or feature code 118 (although your game will still run unless your game’s FEATURE.SET lump specifies feature code 118; the cross-game variables will just be reset each game instead of persistent).
There is a C# implementation of the Z-Machine: zlr.sourceforge.net/
This would allow you to embed an Inform project in Unity. Or if you use JS in Unity, then you could probably embed one of the JS interpreters.