• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

Clinical Encounters

  • Home
  • About
  • Blog
  • Contact
Home › Development › Reworking Dialogue

Reworking Dialogue

Jul 6, 2018 | Ian McKinnon

Clinical Encounters is designed to bring patient encounters to students with a focus on the person instead of the case. Part of our goals of achieving this is to include a system for dialogue with the patient. We want users to not only learn and gain experience with handling different kinds of medical cases but to gain experience with patient interactions as well. Our programmer details how we have worked to achieve this.


Initial Goals

The beginning goals for the integrated dialogue system involved a custom system that would allow users to create their own branching dialogue. It would allow for some persistent and some unique characters per dialogue and would be represented using a nesting structure. Nested dialogue represents a continuation of the conversation while siblings represent a choice. An example of what it looked like is on the side. It took some effort to create the system, and the logic to get everything working smoothly turned out to be a little bit complicated, but it worked. However, it was not without its fair share of issues.

Reworking The Design

There were several concerns with the dialogue at this stage. With the logic as convoluted as it was, attempting to debug any issues resulted in headaches instead of fixes. We created a functioning system for what we wanted, yet it was not intuitive for users to employ it. Finally, our visions and aspirations for the dialogue system were out of scope. To construct a more robust dialogue system we would need to implement a state machine to track where the user is in the dialogue at all time, plus rework the user interface to make it easier to do things like switch dialogue branches. Because of this, we changed direction and opted to remove the branching for a more simple and easy-to-follow linear dialogue.

Removing Branching

A simpler dialogue system

So while we weren’t going to be making the next Fungus anymore, we would still allow users to integrate dialogue interactions into their cases, which is an important aspect for us. Since all that needed to change to remove the branching was to remove the nesting, I hot-wired the dialogue manager class to spawn every dialogue as siblings and it worked! The old system was equipped to handle sibling dialogues at the root level so everything continued without problem.

From there we made a few more visual tweaks to the system. We disabled dragging and rearranging to simplify things for the meantime, we changed the ability to drag dialogue options from the characters into the conversation and made the characters buttons, changed the default colors, and changed the solid background into a border.

Updated visuals

Our hopes are to fully reintroduce branching dialogues later on through the use of Fungus, Twine, or something similar. Until then, however, branching would still be nice. We devised a solution that would keep some aspect of choice in dialogues while not drastically changing how the dialogue functioned, thus keeping it simple and easy to understand.

We Want Branching After All

The initial plan was to handle the dialogue as a quiz. We would let users take the existing quiz tabs and add a bit of dialogue before each question. They would provide different options to continue the dialogue at certain points in the form of right and wrong things to say and, on selecting the correct choice, the next dialogue could be continued.

From that idea, we thought of moving that functionality directly into the dialogues themselves to make the procedure more streamlined and easy to follow for users and case-readers alike. It took a little bit of reworking of the dialogue system to handle something other than a dialogue choice, but now users are free to add questions or other items with ease.

This is where the dialogue system currently stands today. We are still tweaking and updating it, yet the current implementation is what will stay until we upgrade to the final system. It provides a way to keep what we want without being overly complicated. It also wasn’t a time-intensive upgrade to something that will be changed in the future so the benefits outweigh the cost to re-add a form of choice. All in all, it’s in a nice position to still showcase what we want in the software.

You can read more about the Clinical Encounters platform at its website.

Category: Development Tagged: dev-blog game-based learning

Health Impact Studio logo

About Health Impact Studio

We are a dedicated team of developers and researchers with the mission to improve the health of individuals through novel technology including games, virtual reality, and role-playing simulations. We welcome input from the full range of stakeholders to create a customer experience with the broadest applicability to improving health outcomes.

Clinical Tools – Spring 2021 Digital Health Awards® Winner

Jun 8, 2021

Clinical Tools Wins $200K SBIR Award to Decrease Vaping Behavior in Adolescents and Young Adults

Sep 30, 2019

Mindfulness and Patient Communication

Nov 19, 2018

Previous Post: « Nightmare Of Text
Next Post: Handling Images »

Reader Interactions

Leave a Reply Cancel reply

You must be logged in to post a comment.

Ian McKinnon

Ian is a Unity Programmer working with C# primarily. Ian is a runner, dog lover, gamer, and is a pretty good juggler (The Circus is always his backup plan in life)

More Posts

Primary Sidebar

Keep Reading

  • Clinical Tools – Spring 2021 Digital Hea…
    Jun 8, 2021
  • Clinical Tools Wins $200K SBIR Award to …
    Sep 30, 2019
  • Mindfulness and Patient Communication
    Nov 19, 2018
  • Contact Us
  • Copyright & Reproduction Guidelines
  • Privacy Policy
  • Terms of Service
  • Technology Requirements
  • 508 Compliance

Footer

developed & maintained by
ClinicalTools

The Clinical Encounters Training Group: SBIRT Training | BupPractice | PainTx Challenge | CE:Vaping | CE:Alcohol | CE:Obesity | Lift

Clinical Encounters | Reader

Clinical Encounters | Platform

Group Training

  • Facebook
  • LinkedIn
  • Twitter
clinicaltoolsinc@gmail.com

101 A Market St Chapel Hill, NC 27516
919-960-8118

Contact Us

© 2026 · Clinical Tools, Inc · Log In

Walkthrough of a Clinical Encounters | Decisions Interactive Patient Case

Welcome!

If you have an account, please log in! Or create an account now!

Create an Account!
Log In

Forgot Password?
Register New Account
Don’t have an account?
Register now!
Register
  • Hidden
  • By registering, you agree to the Terms of Service and Privacy Policy. If you are a part of a group, you understand your participation information can be provided to the group organizer.
  • This field is for validation purposes and should be left unchanged.
Sign up for our Newsletter!

Want to keep up to date on HealthImpact.Studio developments? Enter your information below and we’ll let you know when we have new products or open research studies, and what we’re working on for the future.

  • Hidden