SUDS is a plugin for Unreal Engine 5 which allows you to run dialogues in your game based on a script that you write in a text file.
Scripts look something like this:
Note: this is an image so that you can see the nice syntax highlighting provided by the SUDS VSCode plugin.
SUDS has many features, including:
- Dialogue flow is expressed in a text file for a focussed writing experience
- Multi-line speech support
- Player choices with unlimited embedded responses
- Flow control via goto, gosub and conditional branching
- Persistent variable state
- Send events back to code/blueprints with any number of arguments
- Supports all the variable substitution and formatting features in the same way Unreal does
- A convenient in-editor testing tool
- Localisation support, including adding translator comments
- Easy integration with save games (SPUD or otherwise)
SUDS was inspired by Ink and YarnSpinner, but I started from scratch and designed it specifically to integrate well with Unreal Engine. It also has a number of differences to those systems, based on my own preferences and the needs of my own project.