Godot Plugin Changelog
New updates and improvements to the StoryFlow plugin for Godot.
Godot Plugin v1.1.0
Data-Only Sync, Portrait UI & Execution Fixes
Adds support for data-only WebSocket sync (skip asset copying for fast iteration), a new Portrait dialogue UI with detached character image, and fixes for media loading, RunScript evaluation, array operations, and variable access outside dialogue.
What's New
New Features
- Data-only sync support — when the StoryFlow Editor syncs with “Data Only” enabled, the plugin reuses previously imported assets from the output directory instead of requiring source files in the build directory, enabling fast script-only iteration without re-copying images and audio
- Added
StoryFlowDialogueUIPortraitscene — alternative dialogue UI with the character portrait rendered as a large image anchored to bottom center of the screen, separate from the dialogue panel. Portrait scales responsively with viewport height. Assign todialogue_ui_sceneon StoryFlowComponent to use it - Portrait height ratio and bottom offset are exposed as
@exportproperties for easy customization
Bug Fixes
- Fixed image import failing for files with mismatched extensions (e.g. PNG data saved as .jpg) — importer now detects actual format from file header magic bytes
- Fixed media assets (images, audio) not loading correctly during WebSocket sync when file paths contained subdirectories
- Fixed background image not persisting across dialogue nodes as expected
- Fixed
PlayAudionot resolving audio assets from resolved asset sources - Fixed
RunScriptoutput nodes not evaluating return values back to the calling script - Fixed array
Push,Pop,RemoveAt, andInsertoperations not correctly modifying the source array - Fixed script parameter passing not propagating values through
RunScriptnode connections - Fixed variable access (
get_variable,set_variable) failing when called outside of active dialogue — global variables now fall back to the manager’s runtime state - Fixed character variable lookup failing due to variables being keyed by internal ID instead of display name
Godot Plugin v1.0.3
Inline Values, Character Variables & Editor Settings
Fixes comparison and arithmetic nodes ignoring inline values, character variable lookup failures, forEach loop issues, and editor dock settings not persisting.
What's New
Bug Fixes
- Fixed inline values on comparison and arithmetic nodes being ignored — nodes like
>=,>,+, etc. silently read their inline values as 0 instead of the configured number, causing incorrect evaluation results (e.g.0 >= 15becoming0 >= 0) - Fixed character variable nodes (
getCharacterVar) always returning empty values — the importer was keying variables by their internal ID instead of their human-readable name, causing lookup mismatches at runtime - Fixed
getCharacterVarnodes not working as array sources forforEachloops - Fixed
forEachloop context not persisting across iterations, causing variable state to reset each loop - Fixed boolean evaluation caches not clearing between
forEachiterations, leading to stale condition results - Fixed character string keys not resolving through the global strings table
- Fixed editor dock settings (port, output directory, build directory) resetting to defaults on Godot editor reload — settings are now persisted via ConfigFile
- Fixed sync output directory not updating from the current field value on each sync
Godot Plugin v1.0.2
Script Selector & Text Block Fixes
Adds a dropdown script selector to the StoryFlowComponent inspector and fixes text blocks not appearing in dialogue.
What's New
New Features
- Script Path Dropdown: The script_path property in the StoryFlowComponent inspector now shows a dropdown listing all imported scripts, replacing the plain text field — script paths are cached during import and WebSocket sync
Bug Fixes
- Fixed text blocks in dialogue nodes not appearing — visibility conditions were not being evaluated, and the built-in dialogue UI was not rendering text blocks at all
Godot Plugin v1.0.1
String Variables & Media Loading Fixes
Fixes string variable interpolation, node input matching, and media assets failing to load at runtime.
What's New
Bug Fixes
- Fixed string variables displaying raw localization keys instead of actual text in dialogue
- Fixed connected node inputs (e.g. SET receiving value from RANDOM) not being found due to handle suffix mismatch
- Fixed audio and image assets not loading at runtime when reimporting from the same directory
Godot Plugin v1.0.0
Initial Release
The first official release of the StoryFlow plugin for Godot 4, bringing full dialogue runtime support to Godot projects.
What's New
New Features
- Full Runtime Engine: Complete GDScript execution engine with 160+ node types
- StoryFlow Component: Node for running dialogues with typed signals
- StoryFlow Runtime: Autoload singleton for shared state management
- Variable System: Boolean, integer, float, string, enum, image, audio, and character types
- Array Operations: Full array support with ForEach loops across all variable types
- Text Interpolation: Live variable interpolation with
{varname}and{Character.Name}syntax - Script Execution: RunScript (call/return with parameters) and RunFlow (jump with exit flows)
- Character System: GetCharacterVar/SetCharacterVar with built-in Name and Image fields
- Audio Playback: Loop, reset, advance-on-end, and allow-skip support
- Background Images: Dynamic background image support with persistence and reset
- Save & Load: Slot-based persistence for global variables, characters, and once-only options
- Built-in Dialogue UI: Default dialogue UI scene with auto-fallback
- Editor Dock: StoryFlow dock panel with Live Sync and Import sections
- JSON Importer: Import StoryFlow Editor projects preserving build directory structure
- Live Sync: WebSocket client for real-time sync with StoryFlow Editor
- Toolbar Button: StoryFlow logo button with Connect/Sync toggle
Unreal Engine Plugin