Snowfall Storytelling Plugin is an Unreal Engine 4 code plugin. It provides story and narrative flow control for RPGs, visual novels and other story driven games. Including player choices, story branching, story conditions and more. All of that through an easy to use screenplay style language.
Snowfall Storytelling Language
Using a simple set of story writing rules, that includes essential functionalities, like conditions, choices and branching, game developers have a powerful, yet simple, script language to work with, made with game writers in mind.
Writers
Writers can create â.sfâ plain text files that can be later dragged and dropped it to the Engine Editor to create a Scene Script asset, used by a Scene Actor to play the story.
Artists
UI designers can create their own Background, Dialog Box and Player Options Widgets using UMG full power, just by extending the base classes.
Programmers
Programmers can run their own custom code during a story, by extending the Scene Base class and adding new functions to it, either with Blueprint or C++.
Scene assets are now Actors for better manipulation and management, benefiting from all its parent class functionalities.
Scene Base Blueprint Removed
Scene mandatory Blueprint parent class is not necessary anymore. All its tasks are now managed by C++ for better performance and inheritance simplicity.
Scene Blueprint Factory
Scene blueprints can now be automatically created in content browser.
Rollback Functionality
Rollback function for Dialog Boxes and Player Options
Snowfall Functionalities Category Group
All Snowfall blueprint nodes are now grouped in a single category.
Fixes a bug in the default Dialog Box widget, that cause variables to do not display its value during typewriting effect, until all its letters where printed.
WARNING! POSSIBLE BREAKING CHANGES: Some functions, classes and files were renamed. Updating may cause âmissing references errorsâ. In some projects, could be necessary to start a new project with UE4.25 and migrate your assets, replacing possible missing references, manually.
New Naming Convention
Some functions, classes and files were renamed and moved, for better convention and organization.
This is a possible breaking change for some projects and can be dealt manually, case by case.
Remove Dictionaries in favor of Maps and String Tables
Variable replacing in dialog boxes is now done using Unrealâs default Maps and StringTables, instead of the custom FDictionary struct. Making it simpler and more versatile.
IconedTextBlock is now SmartTextBlock
Smart Text Blocks have more capabilities than Iconed Text Blocks.
Previously, saving and loading where done by Snowfall functions. Now, developers can, and should, implement their own saving and loading functionalities, that suits their project requirements better.
Save Blueprint/Classes, must still be a SnowSaveGame children, in order to automatically store Snowfall script language variables ($ var = value).
Fixed a crash caused by missing pointers in Editor
Developers can set the widgets to use for Background, Dialog Box and Player Options for each entry, this means that during a Scene, different dialogs could use different Dialog Boxes, allowing better customization and stylization
Itâs now possible to parse âSnowfall Scriptâ source files or strings into a âScript Objectâ during runtime. Itâs not restricted to Editor anymore
Yes. All âDialogsâ and âPlayer Optionsâ, are stored as Unrealâs Text type. So, it can be gathered and localized using the editorâs localization dashboard as usual.
To anyone landing in this page. Please check our documentation page and roadmap section to view patch notes and information about each update and future releases.