top of page
Unity_beI0w0RMMy.png

Context

Wispfire is a small Dutch game studio that specializes in interactive storytelling and is best known for their Herald games series.

​

For my graduation internship i joined the company for 5 months to build a new branching narrative tool for them to use in their future projects, as their current solution was too intertwined with their Herald series. The result of this is Branshee, a node-based editor built into the Unity engine that can be easily expanded and modified depending on the project.

ezgif.com-gif-maker (35).gif

Modularity

Rather than conventional node-based editors, the nodes in Branshee are modular. What this means is that a single node consists of multiple components such a Text, Actor, and Variables to change.

​

These nodes can be saved as presets as well for easy re-use of handy combinations or to maintain a style convention within your team.

ezgif.com-gif-maker (36).gif

Asset Management

To make managing dialogue-related assets easier, Branshee has it's own explorer.

 

This window:

  • Matches a lot of functionality of Unity's own explorer to keep the editor consistent.

  • Makes it much easier to add new, dialogue related assets to the project in the right places.

  • Makes those assets easy to use inside your dialogues.

  • Manages dialogue-specific assets which are otherwise difficult to use inside Unity because they're sub-assets.

Node components

Node components can do practically anything you want them to do. Their UI can be generated automatically based on the fields present within the class, or written by hand if it requires more advanced functionality.

A component can let it's base class draw a default UI based on the fields present in the data class.

Unity_Z2InKJqq5n.png
Code_o8tdeD6z3R.png
Code_rtKbp7N1bj.png

A component can draw completely custom UI, allowing for a custom layout or additional functionality

Unity_5aKgGMQ5e5.png
Code_vm4IRkkDDd.png
Code_EvGfMEi9jk.png
ezgif.com-gif-maker (37).gif

Layers

Despite the reduction in node count achieved with modular nodes, dialogues can still get quite large and cumbersome. To combat this Branshee can hide or disable certain types of node components with controls akin to image editing tools.

​

This also helps developers focus on their own roles. An animator can disable all layers and only view those relevant to adding animation hooks, for example.

bottom of page