Lectrote 1.1.0, now with Ink support


Thanks to Yannick Lohse’s inkjs package, Lectrote now allows you to play games written in Inkle’s Ink language. (The compiled .json format, not the .ink source files.)

Inkle has released the Inky compiler (github.com/isakgrozny/PalimpsestNW) which is an app framework for building a standalone app. (Lectrote also lets you go the standalone app route.)

So that’s three paths for releasing an Ink game already. Four, counting the original Unity integration path.

There are still some places where the Ink format doesn’t quite match the UI model.

Notably: Ink has no notion of formatting. I understand it is common practice to put HTML tags into the .ink game source (literal italics tags for example) and let the display layer pass them through. Lectrote assumes literal text is literal text, so it will display the angle brackets.

As Ink evolves, this may change.

Maybe to add JSZM? It can be used as a Node.js module, and is public domain, so it should be OK to use. However, you may need Node.js 5.x in order to use this; if you are using 4.x it probably won’t work.

Another way to release Ink game could also be just to release the compiled .json file and require the user to have their own interpreter, or to convert it to a Glulx or Z-machine story file or some other VM format, I suppose.

You know what bugs me about Lectrote?

New versions come out faster than I can test them!

In the suggestion box - I know you (Zarf) mentioned the scrollback isn’t infinite, which I had noticed. I wondered if it might be possible to add a preference to make it so.

To add some context to the suggestion, before you even mentioned it, I’d noticed while playing a game that the scrollback went a ways back but then stopped. This made me think ‘Hm, maybe there could be options for the scrollback size.’

Then I thought two more things - this could lead down a rabbit hole of preferences if left entirely up to the player, but also, I had no concept of how big the existing scrollback is in lines, because I don’t think any humans think that way.

Then I thought of possible preferences options - like a short, medium, large and infinite. Or just - the current size, whatever that is, and infinite. Which amounts to finite vs infinite.

But maybe there’s some tech reason why you didn’t put infinite scrollback in to begin with.


  • Wade

Infinite scrollback isn’t infinite. Infinite scrollback is a bug report saying “I played your game {all night | all week | all month} but the interpreter got so slow that I had to quit.”

(Quick search: https://intfiction.org/t/request-for-ideas-and-pre-introducing-gruelang/8936/16 ; github.com/garglk/garglk/issues/195 . I’m sure the problem has come up in other contexts.)

It’s true that the current limits in Quixe are conservative. It’s relying on your web browser, which has been heavily optimized for large amounts of text. I haven’t done any testing to find where it becomes a serious problem.

Release 1.1.1 – a very small update. This incorporates some inkjs bug fixes (described at github.com/inkle/ink/releases/tag/0.4.1 ).

I’ve also updated the version of Electron/Node/Chromium which the app runs off of. This should not have any visible effects; if you see any bugs, please let me know.