Friday, February 17, 2023

Branching scenarios and Dialogue trees

We know what scenario based learning is. Scenario based learning uses real-life situations or scenarios to explain a concept. In an elearning course, the scenarios are presented using images or videos. Branching scenarios allows learners to decide how they want the scenario to unfold. You must note here that the learner's control over the path in a Branching scenario is limited by the choices provided to them by the program - it is not truly infinite. Yet, this allows learners to experiment and discover possible outcomes from their actions at each point. Thereby, they learn favorable and unfavorable actions in a situation.

Branching scenario flowchart

The core of a branching scenario is its flowchart. The flowchart stitches sub-scenarios together into a single scenario based on possible user actions. These actions are presented as options to learners (users). Let’s call these ‘options’ to mean that these are the options available to the learner at the end of each sub-scenario.

Branching scenario flowchartSample flowchart: Options B2 and C1 lead to sub-scenario E. Option C3 branches to Sub-scenario D.

If the branching scenario is video based (it usually is), then it is required to develop several animation or video sequences that seamlessly continue from the last frame of the previous sub-scenario animation. By now you may have figured that building a large branching scenario like the interactive film Bandersnatch is fairly complicated as it depends heavily on the flowchart and animation work. You should not be surprised if a 10 minute elearning branching scenario requires developing 100-120 minutes of animation to play out all the paths. However, knowing the value of a branching scenario, you’re itching to build one. Here are some ways that will help you reduce the cost when developing a branching scenario. We will also look at Dialogue Trees in a little more detail.

Creating cost-effective branching scenarios

Here are some ways to reduce cost in a branching scenario:

  • Use static images

    Since the cost of animation is very high, you could resort to only using images with text or a sequence of stills. This straight away reduces a large chunk of the development effort and thereby cost and time. Remember that static images will not be as engaging as animation. So, you may want to ensure that you invest in some nice artwork or illustrations or make a cool sequence of stills with text.
  • Simplify the branching logic

    The total length of content (stills or videos) is directly proportional to the number of branches. So, making the branching less complicated with fewer options can reduce the overall cost of development. You could simply reduce the number of distractor options that may not be required at all for the understanding of the concept. Since this is for elearning, you can filter the distractors (or negatives) down to only those options that are absolutely relevant to the learner.
  • Conversation tree / dialogue tree

    A conversation tree or a dialogue tree contains only one or a few visuals with simple transitions. The rest of the content is only the dialogues between a character (computer) and the learner. This cannot replace a Branching scenario completely, but it is definitely worth a try. More on this below.

What is a dialogue tree?

A dialogue tree or a conversation tree is a method by which a player/user in a game or simulation interacts with an avatar or character. The direction of the conversation is driven by a decision tree algorithm and the player's responses are limited by the options provided at each node.

Dialogue trees extend beyond games and simulations. You can create a conversation with the avatar of the elearning course. If you do this, your learner will quickly connect to the content. Your conversation tree can be contextual to the section of the course. A small dialogue tree with 3-4 branches can even be hardcoded into the course. I mean, you don’t need to write a program that understands tree structures dynamically and plays it. Of course, such a program will help in the long run as it can be reused.

Dialogue Tree SpreadsheetA dialogue tree constructed on a spreadsheet

Tips to create a good e-learning dialogue tree

  • Plan the flow

    The first aspect you must consider when planning the flow is the number of conversations you want the learner to have. It should be based on the training that needs to be imparted. The second aspect of the flow is the nesting of the dialogues. You don’t want to have a long conversation or a deeply nested one if it does not serve any purpose.
  • Use relevant distractors

    Distractors or negative responses should be valid in real-life and must be relevant to the learning content.
  • Use a spreadsheet

    Spreadsheets allow you to organize dialogues and the tree structure far more easily than a word document. It is also easier to refer to a spreadsheet when programming the branches.
  • Add simple animation / graphics

    You can enhance a conversation output by graphically illustrating two PoVs (Point of views) and using transitions between the learners dialogue and the avatars dialogue. You could also add facial expressions, hand movements and simple transitions.
A dialogue tree output with simple charactersA dialogue tree output with simple characters

Advantages of using a dialogue tree

  • Saves time

    Since the content is delivered through a combination of dialogues, you really don’t need to think through an entire sequence of animation. You will still need a frame or two to illustrate the scenario, but the time needed is insignificant compared to the storyboarding and development in branching scenarios.
  • Saves development cost

    Your focus will only be on dialogue writing and so the effort of storyboarding, graphics and animation is drastically reduced. The only animation you will have to build is the transition of the Speech bubbles. You can optionally add facial expressions and hand and body movements for the characters.
  • Focused learning

    Although a full-fledged branched scenario allows a learner to explore and discover different possibilities, the question is whether we really need a branched scenario or will it be an overkill. If we are using branching purely for variety, we should try to use dialogue trees as it will still be engaging and you’ll also be able to keep the learner focused. Users will not be lost as they don’t have a lot to discover.
  • Specific and General applicability

    On one hand, dialogue trees are specifically useful to teach situations that revolve around conversations, such as a Sales Pitch, a Customer Support interaction or a Leadership Skill. On the other hand, it is also very easy to apply a conversation to any situation.


Dialogue trees cannot replace Branched Scenarios since it does not do full justice in showing learners physical locations, situations, explorations and discovery. Nonetheless, it is a cost-effective way to create engaging branching textual content. It requires very little graphics as most of the action on the screen would use simple transitions and speech bubbles. As branching scenarios are also based on a flowchart like a dialogue tree, it may be a great idea to experiment with one and extend it to the other. We hope this post inspired you to implement a branching scenario or a dialogue tree in your next project!

Featured Posts

Designing Competitions for Gamification

In learning, gamification is competition integrated into a learning system. The competition could be to gain leaderboard points, to ga...

Popular Posts