Dialog Extensions 0.8

https://github.com/hlship/dialog-extensions.

I’ve packaged up my set of Dialog extensions:

  • Threaded Conversation
  • Scenes
  • Tutorial Mode

See the README for documentation.

What’s New in 0.8?

  • Added scenes library
  • Added tutorial mode library
  • Updated for Dialog 1a/01

Scenes in influenced by Inform 7, and supports scenes that start and stop based on game state. Scene duration is tracked (in ticks), and scenes may optionally be recurring.

Tutorial mode tells the player how to interact with the game, identifying things to do, actions to take, and so forth. It is fully customizable and extensible.

Threaded conversations are complex NPC conversations.

Also included are debug extensions, including the roominfo command.

Download

Download here: https://github.com/hlship/dialog-extensions/releases/download/0.8/dialog-extensions-0.8.zip

6 Likes

Wicked. It’s no TADS 3 Conversation system, or Mathbrush’s Clues and Conversations, but Threaded Conversation is a good system. (My only experience of it was from Alabaster, so it could be capable of things I’m unaware of.) Tutorial mode is also nice to have. Maybe one day, I’ll be able to wrap my head around how Dialog works as far as the syntax goes. Dialog and ZIL, no matter how much code I look over, just whizzes over my head LMAO.

1 Like

Very nice. Dialog is my favorite “experimental” language. These extensions will be most useful.

Thank you

BTW, there’s now a proper download now (just the files you need, not the entire source tree).

Also, I’d love feedback on how the tutorial hints are formatted.

Currently, they are in default font, surrounded by square brackets.

Perhaps it should be in italic font and parenthesis? That would match some of the error messages from the standard library:

The Standard Library puts all its “from the program” messages in a (div @meta); by default that’s italic, but the idea is that authors can customize it as they like (including making it not stand out at all). My inclination would be to put non-tutorial meta messages in a (div @meta), and tutorial messages in a (div @tutorial), that people could then tweak as desired.

2 Likes

Great idea!