🧩Custom Module: Dialogue Module

The Dialogue Module is an extension for DSL Forge designed specifically to support dialogue systems, branching choices, and conditional pop-up interactions.

It provides a scriptable, visual, and extensible solution for in-game narrative and dialogue.


✅ Module Features

  • Display character dialogue with template text and dynamic parameters

  • Present multi-choice menus for player selection

  • Support conditionally-filtered random pop-up options

  • Integrate with external UI systems via callbacks

  • Options support conditions, time limits, and metadata


✅ Main Commands

  • Say

    • Displays a line of dialogue from a character

    • Supports formatted templates and metadata

    • Perfect for story text and narrator prompts

  • Choice

    • Presents a choice menu with multiple selectable options

    • Subcommands:

      • Option: Define individual options with conditions, titles, and optional actions

      • TimeLimit: Set a time limit for making a choice

      • Character: Specify the speaking character

  • PopUp

    • Displays a random pop-up from multiple candidate options

    • Subcommands:

      • Option: Define conditional, titled candidates

      • TimeLimit: Set a response time limit


✅ Use Cases

  • Linear or branching dialogue systems

  • Quest dialogue trees

  • NPC interaction menus

  • Random event choices

  • Multi-language text template support


✅ Editor and System Integration

  • The Dialogue Module is used by registering it with the DSL Forge Interpreter

  • All commands are available in the visual editor

  • Command Encyclopedia auto-generates parameter docs and examples

  • Integrates with custom UI via asynchronous callbacks


✅ Design Philosophy

  • Empower writers and designers to define dialogue logic in text or visually

  • Decouple logic from UI presentation

  • Support version control, team collaboration, and future extensibility

Example User Script:

Last updated