Changelog
New updates and improvements to StoryFlow Editor.
StoryFlow Editor v1.6.4
A Cleaner Blank Page: Empty Projects Without Leftovers and Wires That Color Instantly
A small release about first impressions. A new empty project is now actually empty: no OptionButton interface file appearing out of nowhere and no borrowed splash art on its card in the projects screen - the card stays clean until you pick your own background in Project Settings. The example project dropped its own unused copy of that file too. On the wiring side, dragging a connection from a colored pin used to show a plain white line for a split second on large scripts before the color caught up; the line now carries the pin's color from the very first frame in both the Script editor and the UI Editor. And the plain execution wire itself is honest white again instead of the slightly gray tone it had picked up.
What's New
Improvements
-
Empty Projects Start Truly Empty: Creating a project with Empty Project selected used to sneak an OptionButton interface file into it, a leftover from how dialogue options were once built. Dialogue options draw with the built-in Options element, so new projects no longer receive the file, and the editor no longer recreates it in projects that do not use it - deleting it finally sticks. Projects whose interfaces actually reference OptionButton keep it, and if the file goes missing there the editor still restores it so exports and Play keep working
-
No More Borrowed Splash Art: A new empty project showed the example project’s promo artwork as its background in the projects screen, which made a blank story look like someone else’s. Empty projects now start with a clean card and you can set your own background any time in Project Settings. The example project keeps its authored artwork
-
Example Project: The unused OptionButton interface file is gone from the example too - its dialogue options have long been drawn by the built-in Options element
Bug Fixes
-
Wires Take Their Color the Instant You Drag: On large scripts, starting a connection from a colored pin - a boolean, a string, a map or any other typed value - drew a white line for a moment before the color arrived. The bigger the script, the longer the moment. The line now shows the correct color from the very first frame in the Script editor and the UI Editor alike, and map wires still preview the color they are about to adopt while hovering a compatible pin
-
The Plain Connection Line Is White Again: Dragging from an execution pin drew the in-progress line in a slightly gray tone instead of the intended white, so it did not quite match the pins it connects. It is now the same white as the handles
StoryFlow Editor v1.6.3
Pictures That Move: Animated GIF, WebP and APNG Support, a Player to Match and Alpha in Every Color
This release teaches StoryFlow about animated images. GIF, WebP and APNG files now import like any other image, show up everywhere an image can be picked and actually play in the editor's previews and in HTML exports, where the browser animates them natively. Game engines do not import these formats, so exporting a project that uses them warns you and lists the affected files. To go with them, the image viewer grew a proper player with play, pause and a scrubber, and it remembers each image's playback position, zoom and pan when you switch tabs. Zoom itself became honest: 100% now means actual pixel size, images open fitted to the pane and a hairline border marks the edges of transparent images. Color handling took a step forward too: every color picker carries its own alpha channel and the separate opacity fields have retired, with existing files converting automatically. Rounding it out, dialogue option buttons wrap long labels instead of clipping and Size to Content no longer collapses an embedded User Interface to nothing.
What's New
New Features
-
Animated Images: GIF, WebP and APNG: Drop them into the Content Browser like any other image. They show thumbnails and dimensions, can be picked anywhere an image can - dialogue backgrounds, character portraits, interface artwork - and they play everywhere the editor draws them: the UI Designer canvas, dialogue previews, Play and HTML exports, where the browser animates them natively. Game engines do not import these formats, so a JSON export that references them shows a warning listing the affected files; use PNG or JPEG for images that need to reach Unreal Engine, Unity or Godot
-
The Image Viewer Learned to Play: Opening an animated image now shows a player: play and pause, a scrubber that grows under the cursor for easy grabbing, a real time readout and the frame count with the total duration in the info line. Scrubbing pauses playback while you hold the slider and resumes when you let go. Each image remembers its own playback position, paused state, zoom and pan across tab switches, and switching between two open images is instant with no flicker of the wrong frame
-
Zoom That Means What It Says: The viewer’s zoom is now true pixel scale, like an image editor: 100% is one image pixel per screen pixel. Images open fitted to the pane with an honest percentage instead of always claiming 100%, Reset returns to that fitted view and the range runs from 5% to 1600% for pixel-level inspection. A hairline border marks the image’s edges so transparent images are no longer guesswork, and it stays one pixel thin at any zoom
-
Every Color Carries Its Own Transparency: Color pickers across the UI Editor gained an alpha channel, the way Unreal’s UMG handles color, and the separate opacity fields have retired. Everything they used to do now lives in the color itself, including in animations, where keyframes that animated an opacity now animate the color’s alpha. Existing files convert automatically the first time they open
Improvements
- Example Project: The Character Image in the CharacterPortrait interface starts visible, so opening the example shows the portrait right away instead of a hidden element
Bug Fixes
-
Option Buttons Wrap Long Labels: A dialogue option with a long label used to clip to a single row. The button now grows with the wrapped text so the full choice stays readable
-
Size to Content No Longer Collapses Embedded Interfaces: Checking Size to Content on a placed User Interface element shrank its width or height to zero and the embed vanished. The checkboxes no longer appear for embeds, which have no natural size of their own to shrink to, and files saved in the collapsed state repair themselves on next open, springing back to their set size
StoryFlow Editor v1.6.2
The Preview Tells the Truth: Real Dialogue Data, Game-Accurate Layout and a Character Silhouette
This release is about trust in the Designer preview. Previewing a dialogue node in the UI Editor shows that node's real choices again instead of numbered placeholders, the character portrait fills in even when it lives inside a placed interface file and the character name draws with its full outline and shadow. Beyond the preview, a long pass brought the Designer canvas in line with how the game actually lays things out: slot settings on dialogue parts now do something, Max Width narrows and centers the content area, narrator lines and missing portraits behave like they do in play and animating controls moves the same things the game moves. An automated check now holds the editor and the game to the same answers so these cannot quietly drift apart again. Rounding it out, the tag picker's own list scrolls without closing it and a bound character image shows a proper character silhouette instead of a question mark.
What's New
Bug Fixes
-
Preview in UI Editor Shows the Node’s Real Dialogue Again: Previewing a dialogue node showed generic Option 1 and Option 2 buttons instead of the node’s actual choices. The preview now shows the real options, exactly as many as the node has, and the Preview Buttons count only applies when nothing is being previewed. The character portrait also fills in now even when the image element lives inside a placed User Interface file, however deeply nested, and a node with no character shows nothing there instead of a placeholder. The character name draws with its full outline and shadow, which used to appear only in play, and the outline is no longer clipped off the first and last letter
-
The Designer Lays Elements Out the Way the Game Does: A long list of small disagreements between the canvas and the running game is gone. Fill Weight, Align Self and Slot Padding on the Character Name, Dialogue Text and Content Area were ignored on the canvas and only took effect in play. Max Width on the Content Area did nothing in the Designer, so a constrained dialogue box previewed full width and then narrowed and centered in the game. The Visibility setting was ignored on dialogue parts. A narrator line now hides the whole character row like the game does, and a character without a portrait image keeps its space instead of letting the name and text jump around. Default line spacing and text alignment on dialogue parts matched the editor’s own theme rather than the game and have been corrected. An automated comparison now renders the same interface through both the editor and the game engine and fails the build if any of this drifts again
-
Animating Controls Now Moves the Same Things the Game Moves: Several animation and script channels worked in play but did nothing on the Designer canvas while scrubbing: showing or hiding a dropdown’s arrow, a checkbox’s custom glyph and checked colors, a slider thumb wider than the default and Set Text on a text element with a styled scrollbar. All of them now act on the canvas exactly as in the game. Animating Font Family was broken in the game as well as the editor and now works in both
-
Scrolling the Tag Picker No Longer Closes It: With many dialogue tags, scrolling inside the open Add Tag picker closed it on the first wheel tick and the rest of the scroll went into the Details panel behind it, which made a long list impossible to browse. Arrow-keying below the visible rows had the same effect. The list now scrolls in place and the picker still closes when the panel behind it actually scrolls away
-
The Once Chip Stays Clear of the Option’s Connection: On a dialogue option marked Once, the chip could sit underneath the option’s connection glyph. The row now reserves the space so both stay readable
Improvements
- A Character Silhouette Instead of a Question Mark: An image bound to the dialogue’s character used to show a large question mark on the canvas, which made styling and animating a portrait a guessing game. It now shows a neutral gray character silhouette standing on the element’s bottom edge, so files like the example’s character portrait can be animated against an actual figure. The silhouette honors the element’s tint, so an animation like the example’s Damage Character flashes it red just like the real art in play
StoryFlow Editor v1.6.1
Hotfix: Designer Crashes, Preview Accuracy and Example Project Repairs
A hotfix release. Everything here fixes something that shipped in the 1.6.0 update rather than adding anything new. Dropping a Switcher onto the Designer canvas no longer crashes it, the Designer now measures element boxes exactly the way the game does so bordered elements sit where you placed them, a newly created project shows its icon in the launcher straight away, the dialogue tag picker no longer stretches the Details panel and dialogs open at the right size when the interface scale is above 100%. The bundled example project also had broken connections repaired and its busiest script laid out so it can actually be read, so create a fresh example project after updating if you want those corrected files.
What's New
Bug Fixes
-
A Switcher Crashed the Designer Canvas: Dragging a Switcher from the palette onto the preview took the whole canvas down the moment it landed, and any interface file that already contained one crashed on open. Fixed, along with the underlying wiring fault that caused it, so no other element can hit it
-
The Preview Measures Elements Like the Game Does: The Designer and the running game disagreed about whether an element’s border and padding sit inside or outside its size. Anything with a border or padding was drawn smaller in the preview than it renders in play. Most visibly, inventory slot art sat in the corner of its container instead of filling it, and rows of slots showed gaps that were not really there. Both now measure the same way, so what you lay out is what you get. Buttons were already consistent and are unchanged
-
Example Project Data: Several scripts in the bundled example shipped with broken connections. Some wires pointed at inputs that no longer existed, so they drew no line at all even though the story still played, and a few leftover nodes from a removed feature sat there doing nothing. These are repaired, the abandoned nodes are gone and the combat script has been laid out so it can be followed instead of untangled. These are fixes to the project template, so an example project you created before this update keeps the old files. Create a new example project after updating to get the corrected version
-
A New Project Had No Icon in the Launcher: Creating a project from the example left it showing no icon in the projects window. Opening it once and going back made the icon appear, because the launcher was reading the project fresh from disk by then. The icon is now there the moment the project is created
-
The Add Tag Picker Stretched the Details Panel: In the Dialogue Editor, opening the tag picker widened the Details panel and pushed it to the right, and a narrow panel cut the picker off instead of showing it. The picker now opens over the interface rather than inside the panel, and keeps itself on screen wherever the button happens to sit
-
Dialogs Were Sized Against the Wrong Interface Scale: With Interface Scale set above 100%, confirmation and version dialogs could open too small for their own contents, which then spilled outside the window. Two separate causes: a scale set in an earlier version was never passed through to the code that sizes new windows, and an already-prepared dialog kept the size it was built with when you changed the scale afterwards. Both fixed, and the fix applies itself on first launch with no need to touch the setting
Improvements
- Cleaner Dialogue Options: The On Click label next to each dialogue option’s output has been removed. The icon already says what the connection does, so the row reads with less clutter
StoryFlow Editor v1.6.0
UI Designer, Scripting, Animations, Dialogue Tags & New Example Art
You can now build your game's whole interface in StoryFlow, not just restyle its dialogue box: the User Interface editor gained a Designer canvas, a palette of layout, display and input elements, anchoring that holds a layout together at any resolution and per-state styling with image brushes and 9-slice. Every interface also has its own node canvas, where elements fire events and nearly every property has a Set and Get node, backed by the same global variables, arrays, maps and enums as the rest of the editor. A keyframe timeline animates almost any property, with eight easing curves to shape the motion. Any User Interface file can be placed inside another as a reusable element, spawned at runtime or repeated over an array. The dialogue box itself was taken apart and rebuilt out of these elements, so every part of it can be moved, restyled or replaced. Dialogue tags let a line of dialogue cue the interface, and reroute nodes tidy up crowded wires on both canvases. The example project comes with a whole new set of art, and a long round of correctness work on copy/paste, exports and project-wide node ids rounds it out.
What's New
New Features
-
The UI Editor: Menus, HUDs, inventories and anything else your game needs on screen
- A Designer canvas with rulers, a zoom-aware grid, live cursor readout and a dimmed letterbox outside the screen area
- An Elements palette, a Hierarchy tree and an Element Settings panel, each with its own search
- Elements: Text, Image, Button, Box, Vertical Box, Horizontal Box, Overlay, Scroll Box, Grid Box, Switcher, Spacer, Text Input, Checkbox, Dropdown, Slider, Progress and Options
- Drag an element from the palette onto the canvas or straight into the hierarchy, with a live ghost preview at the cursor and a landing indicator that only appears where the drop is valid
- Wrap With, Replace With and Replace With Child restructure a tree in place instead of making you rebuild it
- Rename, duplicate, lock, hide and multi-select elements, with copy/paste and a single undo step per action
- Canvas ergonomics throughout: right-click menus, arrow-key nudging, Shift-drag axis lock, Escape to select the parent and F to zoom to the selection
-
Anchors & Layout: Every element is pinned to its parent, so a layout holds together at any resolution
- A draggable anchor medallion with a live percentage readout, plus a 4x4 grid of presets for the common corners, edges and centers
- Anchor to a point or stretch across an axis, with offsets, alignment and size-to-content per axis
- Ctrl or Cmd while dragging moves an element together with its anchors, and Shift-click a preset to set alignment too
- Paired X and Y rows for Position, Size, Anchors and Alignment, with per-side values on stretched edges
- Clip Content on containers, a Max Width cap on boxes and unified padding and margin everywhere
-
Element Styling: The editor and the game share one styling engine, so what you see on the canvas is what renders in play
- Separate colors for the hover, pressed, disabled and focused states of interactive elements
- Image brushes per state, with Stretch, Tile at native size and seamless 9-slice
- Per-side padding, margin, border width and border radius, expandable from a single value
- Text outline and drop shadow, plus line height, alignment and scrollbar styling
- Slider, checkbox and progress bar parts are styled individually: track, fill, thumb, box and checkmark
- Dropdown lists get their own surface, rows, arrow and scrollbar, with a preview toggle so you can style the open state
- Every row has a reset-to-default button and a tooltip explaining what it does
-
UI Scripting: A second node canvas behind every User Interface file, switchable with Ctrl+E and rebindable like any other shortcut
- Element events: On Click, On Double Click, On Right Click, On Pressed, On Released, On Hover, On Unhover and On Value Changed
- Set and Get nodes for nearly every property in Element Settings, from colors and brushes to visibility, text and slider ranges
- The full operator set from the script editor: boolean logic, integer and float math, string ops and type conversions
- Global variables plus per-file local variables, with arrays, maps and enums all reusing the nodes you already know
- For Each, For Each Child, Delay, Open URL, Quit Game, Is Desktop App, Reset Game, Play Audio and Comment nodes
- Tick Is Variable on an element to reach it from the graph, with a warning before you untick one that is still in use
- Graph-level events: On Construct, On Options Updated, On Text Revealed, On Dialogue Updated, On Variable Changed and On Dialogue Tag Reached
-
UI Animations: A keyframe timeline docked under the preview
- Animate almost any property an element has, including position and size on point-anchored elements, plus static rotation and scale
- Eight easing curves split into basics and character, with constant, linear and eased keyframe shapes drawn on the timeline
- Auto-key diamonds sit next to every animatable row in Element Settings, so editing a value at the playhead sets a key
- Live sampled values read back into the settings rows, with click-to-type and press-drag scrubbing
- Scrub, play, loop, zoom, pan, marquee-select, snap and copy/paste keyframes, with per-track locking
- Play Animation, Stop Animation and On Animation Finished nodes on the script canvas, with a Get Animation reference node
- Restore State on Play and Stop captures a baseline so an animation can put an element back the way it was
-
Reusable Interfaces: Any User Interface file is an element in its own right
- Every one in the project shows up in the palette under User Interfaces, and dropping one in places a copy already pointing at that file
- Drag one from the Content Browser onto the canvas, the hierarchy or the script graph
- Create Instance spawns one at runtime with width and height in pixels or percent, and Clear Children removes them
- For Each loops build a list of instances from an array, so a save slot row or an inventory grid is one element repeated
- Reach into a placed instance from the graph: Get Element, Get Var and Set Var on its members, resolved across files
- Instances play their own animations, so two copies of the same file never fight over playback
-
Drag & Drop: A full drag and drop system in the finished game, for inventories, card hands and anything else a player moves around
- Is Draggable, Drag Tags, Drag Visual, Ghost Opacity and Ghost Anchor on any element
- Allowed and Disallowed Drag Tags on drop targets, with silent fall-through to whatever is underneath
- On Drag Detected, On Drag Enter, On Drag Leave, On Dropped and On Drag Cancelled events
- A Move behavior that drags the element itself, with Keep on Screen, dedicated drag handles and an On Moved event
- Grab and grabbing cursors, long-press support on touch and a universal Is Enabled that makes disabled elements reject drops
-
Tooltips: Hover text on any element, or a whole User Interface file rendered as the tooltip, with a 12-cell placement grid, offset and auto-flip
-
The Dialogue Is Elements Now: The dialogue box was taken apart and rebuilt out of ordinary elements
- Character name, character image, the text block, the advance hint, the options list and the background are all normal elements you can select
- Move them anywhere in the tree, restyle them, wrap them in containers or delete the ones you do not want
- Bind any text or image element to dialogue data, and the same value can feed several elements at once
- The Options element arranges buttons vertically, horizontally or in a grid, and reveals them immediately or after the text finishes
- Add fresh dialogue parts from the palette’s Dialogue category at any time
-
Variable Binding: Text Input, Checkbox, Dropdown and Slider read and write a variable both ways, with an inline bind button on the value row. Progress displays one. Bind an image element to an image variable to swap it at runtime
-
Dialogue Tags: Tag a dialogue line and let the interface react to it
- Add tags to any dialogue node from the Dialogue Editor, backed by a project-wide registry with a searchable picker
- On Dialogue Tag Reached fires in the UI script when a tagged line is entered
- Renaming a tag cascades everywhere, tags are indexed in Global Search, and deleting one shows what still uses it first
-
Reroute Nodes: Double-click a wire on either canvas to drop in a reroute point, then drag it wherever the graph reads best
- Reroutes adopt the type of the wire they sit on and carry its color, including two-color map wires
- Clean Up Reroutes in the canvas menu removes them all at once
- They are collapsed away at export, Play and engine sync, so the runtime never sees them
-
Refreshed Example Project: Tafadzwa Tarumbwa (Totally2d) offered to redraw the example project, so it ships with an entirely new set of artwork covering every character, background and menu screen
- Day and night variants of the key backgrounds, so the Menu and Intro keep their original mood while the daytime versions are there to use
- New projects open with the promo key art as their hero background, and hero images now stay sharp at every window size
- The project ships with a README crediting the artist
-
Undo & Redo in the Main Menu: Buttons sit left of Save and follow whichever tab is active
-
UI Designer Settings: A settings category of its own, with a default preview ratio and a custom preview size stored in the file, so you can design against the resolution you actually ship
Improvements
- Faster Canvases: A broad performance pass on both node canvases. Large graphs skip drawing what is offscreen, nodes stop redrawing every time the view shifts, and panning, zooming and dragging nodes stay smooth on big scripts
- Smooth Canvas Movement: A new toggle in Settings > General, on by default. It trades a little sharpness while the canvas is moving for a smoother pan and zoom, so turn it off if you would rather nodes stay crisp mid-gesture
- Search & References Cover Interfaces: Global Search indexes User Interface files and their value bindings, and the References view counts image, brush, instance and variable usages, with Go to Node and Go to Element navigation
- Reference-Safe Renames: Renaming or deleting a variable, asset, font or file now sweeps open undo histories and clipboards too, so an old reference cannot come back through undo or paste
- Per-Canvas Keybindings: Node-spawn shortcuts are scoped per canvas, and the UI Editor keybindings are split into Designer and Script groups
- Already-Open Files: Choosing a file that is already open focuses its tab instead of reloading it
- Cleaner File Opening: A User Interface file shows a spinner until it, its nested interfaces and their fonts have all settled, instead of flashing a half-built layout
- Structural Validation: User Interface files are checked on load, and a save guard refuses to overwrite a real file with an empty one
Bug Fixes
- Unique Node IDs Across A Project: Duplicating a script used to copy its node ids exactly, and every runtime tracks state by node id. Clicking a once-only option in one copy could hide it in the other, and in some engine plugins that damage is permanent because the ids are written into the save game. Colliding ids are now regenerated on open, duplicate, export, Play and engine sync
- Random Branch Copy/Paste: Copying a Random Branch cloned its option ids, so several nodes ended up sharing one set. Ids are regenerated on paste and repaired at every boundary
- Play Audio On Linux: Audio dragged in from the Content Browser could stay silent on Linux, where file paths are case-sensitive. Paths now keep the exact casing they were dragged with, the loaders recover from a mismatch and exports normalize what they write
- Exports: Fonts, character images, audio values, global variables and UI images referenced only from a script node or an animation keyframe are all bundled now, and UI images are embedded directly so 9-slice brushes survive in an exported HTML file opened from disk
- Comments: Dragging a comment moves its contents again, and it no longer drags nodes belonging to another tab
- Keyboard Layouts: Undo and redo labels and shortcuts are correct on QWERTZ and AZERTY layouts
- Go To Node: Jumping to a node or element is reliable on both canvases, including from the preview
- Content Browser: Importing through the context menu at the project root no longer fails with an invalid destination path
- Runtime: Standalone exports no longer flash dark before the first scene, disabled controls no longer show a stray focus outline, and projects with no startup UI still render their background
Breaking Changes
- Dialogue Input Elements Removed: The input elements that lived inside dialogue nodes are gone. The UI editor’s Text Input, Checkbox, Dropdown, Slider and Progress elements replace them, and they bind to variables directly, which is what those inputs were doing by hand. Opening an older project clears out the leftover elements and their wires in one pass, so no dead connections are left behind
StoryFlow Editor v1.5.3
Resizable Detail Labels & Maps in Run Script
This release sharpens the work introduced in 1.5.2. The script file Details panel gains a resizable label column you can drag to fit long names, with collapsible nested rows that mirror the UI editor. Map variables now flow through Run Script nodes as parameters and outputs with typed two-color handles, and duplicate keys are tidied up automatically when a file is saved. A reference-tracking fix rounds things out, stopping false external-edit warnings from leaving previews stale.
What's New
New Features
-
Resizable Detail Labels: The script file Details panel now has a draggable label column
- Drag the divider to widen the labels for long names or shrink them to give the values more room, in both the node and the variable inspectors
- Long labels truncate cleanly instead of wrapping, and dragging the divider stays smooth without re-rendering the panel
- Sections nest and collapse like the UI editor, and the column width returns to its default with Reset Layout
-
Maps in Run Script: Map variables now travel through Run Script nodes
- Expose a map as a parameter or an output on a Run Script node, the same way scalars and arrays already work
- Map handles show their key and value types as two-color handles, and the in-flight line picks up the map’s colors while you drag a connection
- A Run Script node pointed at its own file refreshes its parameters and outputs live as you edit the target, and each parameter input accepts a single connection
-
Discord Rich Presence: StoryFlow now shows in your Discord status while the editor is open
Improvements
- Cleaner Map Keys: Duplicate keys in a map are now collapsed whenever a file is saved or loaded, keeping the last value for each key so the data stays consistent across the editor and the engine plugins
Bug Fixes
- Previews: Rewiring an asset no longer raises a false “changed outside the editor” warning, and previews refresh instead of going stale or blank
StoryFlow Editor v1.5.2
Desktop App Export, Map Variables & A Redesigned Launcher
Your story can now leave the editor as a real game: one click exports a standalone desktop app for Windows, macOS or Linux, launching fullscreen with your project icon and window settings baked in. Map variables arrive as a full key/value type with eleven nodes, typed two-color handles and engine plugin support. The projects window was redesigned into a proper launcher with project icons, custom hero backgrounds and safer version-mismatch handling. Reload-from-disk, modulo nodes, new toolbar shortcuts and a round of fixes complete the release.
What's New
New Features
-
Desktop App Export: Export your story as a standalone desktop game
- Pick Desktop App from the export menu to produce a ready-to-run build for Windows, macOS or Linux, with the current OS marked right in the menu
- Windows builds ship as a plain folder with an executable, macOS builds as an .app bundle and Linux builds as an AppImage
- For now the editor builds for the platform it is running on, so exporting a Windows app requires Windows and likewise for macOS and Linux. Cross-platform export is on the roadmap
- Choose how the app launches in project settings: fullscreen like a game by default, or windowed at a size you set, with an option for whether the window is resizable
- Your project icon becomes the app icon, converted to every needed format offline without any external services
- Reaching the story’s final END node closes the app, so a finished story exits cleanly
- When the export completes, Show in Folder reveals the produced executable itself
-
Map Variables: A key/value collection type joins scalars and arrays
- Keys can be strings, integers or enums and values can be anything from strings, numbers and booleans to enums, images, audio and characters, with both types picked when the variable is created
- Edit default entries inline in the variable panel with a two-column editor, including dedicated option editors for enum keys and values
- Get Map and Set Map nodes plus a full catalog under Map Operations: Get Value, Set Value, Has Key, Size, Keys, Values, Remove Key and Clear
- A For Each Map loop node walks the entries with Key and Value outputs on every iteration
- One current limitation: map variables cannot be created on characters yet. Characters are getting a redesign soon and maps will come to them with it
- Two-color handles show the key and value types at a glance, and dragging from an untyped handle live-previews how it will adopt the connected types
- Drag-to-create filters the node menu to compatible variables and wires map handles automatically
- The runtime debugger renders maps as expandable key/value rows
- Maps flow through export and live sync to the engine plugins, and the editor warns when a connected plugin build predates map support
-
Redesigned Projects Window: The launcher grew up
- A resizable project rail with search, keyboard navigation, name tooltips and double-click to open
- A hero pane presents the selected project with its icon, background art, quick actions and a warning badge when the project was made in a different app version, with the app version shown in the header
- Opening a project made in a different app version now goes through a proper modal dialog, with a Backup and Open option that snapshots the project first
- The create-project form was rebuilt around clearer template cards
-
Project Icons & Backgrounds: Give every project a face
- Pick an image and crop it square in a new crop dialog with wheel zoom and a dimmed full-image view
- The icon lives in the project root, shows in the launcher and doubles as the desktop app icon
- Choose a custom 16:9 hero background per project, while new projects start with a randomly picked scene from the bundled example art
-
Reload From Disk: Bring outside edits into open files
- Files changed outside the editor refresh on their own when the open tab has no unsaved edits
- With unsaved edits, a conflict prompt lets you take the disk version or keep yours
- Reload manually from a Content Browser file’s context menu or a shortcut you can assign in Keybindings, and script reloads are undoable
- Works for scripts and markdown files alike
-
Modulo Nodes: New Modulo math nodes for integer and float remainders, returning 0 on a zero divisor like the divide nodes
-
Toolbar Shortcuts: The main toolbar buttons gained rebindable commands
- Play/Stop toggles with F6 and Export/Sync runs with F7 out of the box
- A new Add Dialogue Option command inserts an option in the dialogue editor and focuses it for typing, ready for a chord of your choice
Improvements
- Quieter Auto-Save: A new Auto Save Notification setting hides the autosave success toast if you find it noisy, and auto-save no longer fires every time the window loses focus
- Runtime Debugger: Image, character and audio type pills now carry their proper colors
- Notifications: Editor windows now show warning, success and info toasts from the app, where previously only error toasts appeared
Bug Fixes
- Canvas: Restored middle-mouse panning, broken since 1.5.0 by the middle-click autoscroll suppressor
- Runtime: Get Character Var nodes left on their default String type now read the variable’s value correctly
- File Watching: Projects opened through a symlinked path on macOS and Linux now watch the real location, and the watcher no longer reacts to events about the project root itself
- Projects Window: The launcher reveals only after the project list is actually ready, instead of flashing an empty state first
StoryFlow Editor v1.5.1
Flexible Docking Comes to Linux, Plus Audio & Stability Fixes
The flexible docking system from 1.5.0 now works fully on Linux: drag tabs to reorder them, tear them off into their own windows and dock them across your monitors, all with a cursor-following drag preview that matches the Windows and macOS experience. This release also fixes an audio regression so advance-on-end works on every channel, resolves a rare silent quit when opening certain projects, and irons out a cross-window layout loop. A round of Linux polish — a proper taskbar icon, system-accurate date and time formatting, and no more focus-stealing on GNOME — rounds it out.
What's New
New Features
- Flexible Docking on Linux: The drag-and-drop docking introduced in 1.5.0 now works fully on Linux
- Drag tabs to reorder them, pull a tab off into its own window, and move tabs between windows
- Dock a tab to any edge to split a window, or drop it onto another window to hand it over
- A cursor-following drag preview shows exactly where a tab will land, matching Windows and macOS
- Releasing a tab away from any dock zone opens it in a new window, with a clear “New Window” hint
Improvements
- Accessibility: Editor tabs now use DOM-safe IDs so screen readers resolve their ARIA relationships correctly
- Titlebar: The window version pill is now outlined instead of filled, for a lighter look
- Linux Polish: The app ships a proper window icon so the taskbar resolves it, formats dates and times using your system’s conventions, and no longer steals focus with notifications when a window is restored or docked on GNOME
Bug Fixes
- Audio: “Advance on end” now works on any audio channel, not just the dialogue channel — a regression introduced with 1.5.0’s audio channels
- Project Open: Fixed a rare silent app quit when opening certain projects, and the editor now recovers gracefully if a window fails to create instead of getting stuck
- Docking & Windows: Fixed a cross-window split-size feedback loop that could freeze the editor, and resolved several Linux cross-window docking issues — no more surprise detaches into new windows, accidental detaches on Escape or same-window drops, or a brief gap flash when docking onto a tab bar
StoryFlow Editor v1.5.0
Flexible Docking, Audio Channels, Custom Keybindings & Global Search
The biggest StoryFlow release so far. The rigid single-window layout is gone: tear any file tab off into its own window, move tabs between windows and arrange them across your monitors however a project needs. On top of that it adds a managed audio channel system, fully customizable keyboard shortcuts, project-wide global search, a View References window for tracking where files and variables are used and a dedicated Settings tab with UI scaling. The Content Browser was rebuilt to stay fast in projects with thousands of files, and the editor now picks up changes made to files outside the app. Dozens of fixes round it out.
What's New
New Features
-
Flexible Docking System: Detach, move and re-dock tabs across as many windows as you like
- Drag a file tab to a window edge to pop it out into its own window, then place windows side by side with your OS to edit two scripts at once
- Move file tabs freely between windows
- Dock the Content Browser and References to any edge of a window, or pull them out into their own window too
- Every window is an equal peer with its own open tabs
- Each window remembers its own layout, size and open tabs, and restores them on the next launch
- Window > Reset Layout puts everything back to the default arrangement
-
Per-Tab Editor State: Every editor tab keeps its own undo/redo history and view state (selection, zoom and scroll position), and that state travels with the tab when you move it to another window
-
Audio Channels: A managed, named audio channel system replaces the old fixed slots
- Create as many channels as you need, each with its own name and volume
- Assign dialogue and Play Audio nodes to any channel from a dropdown
- Control per-channel and master volume in project settings, the in-game popup and the debugger
- Deleting a channel scans for references first and lets you reassign or strip them
- The runtime debugger shows per-channel playback state with click-to-seek
-
Customizable Keybindings: Remap almost any shortcut in the editor
- A dedicated Keybindings panel with search and grouped commands
- Record new chords live, with conflict detection as you type
- Assign more than one chord to a single command
- Bindings adapt to your OS and keyboard layout, including non-Latin layouts like Russian, Greek and QWERTZ
- Define your own node-spawn commands with custom shortcuts
- Import and export bindings, with warnings when a binding collides across platforms
-
Global Search: Search the whole project at once with Ctrl+Shift+F
- Matches across scripts and markdown files
- Substring, whole-word, case-sensitive and regex modes
- Relevance-ranked results with centered snippets and highlighted matches
- Click a result to jump straight to it
- Available as a dockable tab that updates as files change
-
Settings Tab: Settings now live in a dedicated, dockable tab
- Switch between Application and Project scope
- A category sidebar covering Appearance, Editor, Keybindings, Input, audio and startup
- Reset a single category or every setting at once
- Export and import your full configuration as a JSON bundle
-
Interface Scaling: Scale the entire editor UI up or down to suit your display, found under Appearance settings. Windows, minimum sizes and the drag preview all follow the chosen scale
-
Editor Theme & Variable Colors: Pick an editor theme and customize variable colors from the Appearance settings, with the choice synced across open windows
-
View References: A new window for tracking where things are used
- See every script that references a given file or variable
- Delete a file safely: its references are rewired before the file is removed
- Open it from the toolbar or a file’s right-click menu
-
Rebuilt Content Browser: Reworked to stay fast in large projects
- Folder and tree views are virtualized, so thousands of files scroll smoothly
- Hover an item for a tooltip with its size, type, dimensions or duration and modified date
- Reference-aware deletion warns you before removing a file that is still in use
- A health indicator shows file-watching status at a glance
- Back and forward navigation, search and filters with persisted settings
-
Live File Syncing: The editor now watches the project folder and picks up changes made outside the app
- New, edited, deleted and renamed files refresh on their own
- Renames keep their favorites, colors and navigation
- Watching runs on a background thread and recovers automatically if it crashes
-
Markdown Editing: Open and edit .md files inside the editor with a live preview, handy for design notes kept alongside a project
-
Project Metadata & Migrations: Give projects a name and description, see a clear alert when opening a project built in a different app version, and have older project files migrated forward automatically so they keep working
-
More Canvas Editing: Alt+drag a node to duplicate it in place, and nudge selected nodes with the arrow keys (1px, or 10px with Shift)
-
Projects Window: Right-click a project for quick actions, recently opened projects sort to the top, and a project marked auto-open stays pinned
Improvements
- Faster Startup: Background work is deferred so the editor window opens sooner
- Worker-Thread Heavy Lifting: File watching, project-tree scanning and bulk variable renames run off the main thread to keep the UI responsive on large projects
- Faster Undo/Redo: History now uses structural sharing, so it stays quick even on big scripts
- Version in Header: The editor header shows the current app version, and the window title reflects the active tab
- Smarter Auto-Save: Auto-save defaults to 30 seconds and guards against ever writing empty content over a real file
- Cross-Window Sync: Channel and master volume changes propagate live to every open window
- Crash & Debug Logging: Uncaught errors and crashes from every window are captured to a debug log, which makes bug reports far easier to act on
- Sturdier Inputs: Numeric inputs reject NaN and Infinity
- Dropdowns Stay On Screen: Pickers and dropdowns no longer clip at the screen edge or inside dialogs
Bug Fixes
- Docking & Windows: Fixed multi-window layout restore and HiDPI bounds persistence, kept unmaximized windows unmaximized on restore, fixed cross-window tab docking, corrected cross-monitor drag-ghost anchoring along with a mixed-DPI crash, made editor and file state survive detaching and re-docking, and stopped Play/Stop state from drifting between windows
- Audio Channels: Channels now load from project data on open, node badges show the channel name, out-of-range legacy channel numbers resolve to the first channel, and the reassign dialog no longer closes mid-submit
- Content Browser: Hardened file-rename handling, fixed selection and drag-select being lost in spawned windows, made “Show in Content Browser” reliably scroll the target into view and expand its folders, allowed dropping files into the project root from OS imports, and stopped item tooltips from flickering or opening on their own
- Keybindings: Undo, redo, select-all and copy now work on non-English keyboard layouts, shortcuts are suppressed inside text inputs by default, conflict and reset flows were tightened, and chord chips reflect your actual rebinds
- Global Search & References: Debounced queries to stop double-firing, rekeyed results correctly when a folder is renamed, made reference lookups consult unsaved open files, and corrected the tab icons
- Settings: Category selection switches to the right scope, reset respects shortcuts you intentionally unbound, and inconsistent radio controls were replaced with a standard one
- Runtime & Export: Comparison nodes evaluate on demand, advance-on-end is scoped to the dialogue channel, and the minimap keeps its dark theme in production builds
- General Stability: Cleaned up IPC listener and timer leaks, guarded messages sent to windows that are closing, fixed a stuck drag-gap state, and suppressed a console flash on Windows startup
StoryFlow Editor v1.4.2
Node Alignment, Character Image Controls & iOS Audio Fix
Adds a Q shortcut for instantly aligning connected nodes into perfectly straight edges, interactive resize handles and drag-to-move for character images in the UI editor, and fixes audio volume control on iOS for exported HTML.
What's New
New Features
- Node Alignment Shortcut (Q): Select two or more connected nodes and press Q to align them so every connection line becomes perfectly straight. Uses actual handle positions so alignment is precise regardless of node type or handle placement. Primary flow edges are prioritized when nodes share both flow and data connections
- Character Image Resize & Drag in UI Preview: When a character image is selected in the .sfui editor, 8 resize handles appear on the selection outline for interactive resizing. In detached layout, drag the image directly to reposition it. Hold Shift during resize to maintain the original aspect ratio
Improvements
- Increased resize handle hit area for easier interaction on smaller screens
Bug Fixes
- Fixed audio volume slider having no effect on iOS in exported HTML by routing playback through Web Audio API GainNode
- Fixed typewriter text not auto-scrolling correctly in fixed-height content areas and not resetting scroll position on new dialogue entries
- Fixed .sfui preview not loading data for files in subdirectories due to backslash path mismatch on Windows
- Fixed nested button DOM nesting error in SectionHeader causing invalid HTML warnings
- Fixed selection overlay blocking clicks on content area elements during character image resize and drag interactions
StoryFlow Editor v1.4.1
Example Project, UI Editor Overhaul & Data-Only Sync
Introduces The Beast of Millhaven example project with a full interactive story showcasing all StoryFlow features. Major UI editor improvements including typewriter text effect, detached character image layout, content area containers, fixed-resolution scaling and many more. Adds Data Only sync toggle for fast WebSocket iteration. Dozens of bug fixes across the editor and runtime.
What's New
New Features
- The Beast of Millhaven Example Project: New built-in example project featuring a full interactive story with multiple characters, branching dialogue, audio, background images and variable-driven logic. Available from the new project type selector when creating a project
- Typewriter Effect: Dialogue text in the runtime and .sfui editor now supports per-character reveal animation with zero-reflow span-based rendering
- Detached Character Image: Character image can be placed outside the dialogue box with independent sizing, per-corner border radius and character name styling options
- Content Area Container: New container type in the UI editor with fixed height, scrollbar customization and hierarchy visibility toggles
- Container Anchor Point: Set the anchor origin for UI containers in the .sfui editor
- Fixed-Resolution Scaling: Runtime and UI preview now support a fixed-resolution scaling system for consistent rendering across screen sizes
- Data-Only Sync: New toggle in WebSocket export settings to skip copying image and audio files during sync. Only scripts, characters and variables are exported. Enables fast iteration after an initial full sync
- Undo/Redo Per Tab: Editor history is now preserved per tab instead of being cleared when switching between files
- Tab Switching Shortcuts: Ctrl+Tab and Ctrl+Shift+Tab to cycle through open editor tabs
- Canvas Zoom Extended: Canvas can now zoom out to 10% (5x further than the previous minimum)
- Resizable Dialogue Background: Background image in dialogue nodes can now be resized
- Variable Description Field: Variables now have an optional description field shown as a tooltip on hover
- Content Browser Shortcuts: Ctrl+D to duplicate files, Ctrl+Shift+N to create new folder
- RunFlow Double-Click: Double-click a RunFlow node to focus on its entry node
- Asset Preloading: Background preloading system with canvas-based rendering and loading screen for exported HTML
Improvements
- Asset Caching System: Image caching eliminates flickering and improves editor performance when switching between nodes
- Renderer Cache Pre-Warming: All project images are pre-cached at startup for instant rendering
- Scrub-to-Adjust Inputs: Numeric inputs in the UI editor support click-drag to adjust values
- Character Image Size Split: Separate width/height controls for character images in UI editor
- Nesting Indicators: Collapsible section content shows visual nesting depth in UI editor hierarchy
- Variable Details Tooltips: Standardized tooltip style across variable detail rows
- Image Reset Styling: Restyled image reset setting as a separate row with scoped dashed border
- Character Image Opacity: New opacity setting for character image background in UI editor
- Character Name Margin: Configurable margin and text alignment for character name in detached layout
- Flow Button Tooltip: Added tooltip to Exit Route setting in flow edit panel
- GitHub Link: Added GitHub social icon to the About window
- Runtime Debug Logging: Editor-only debug logging added to runtime for diagnosing play mode issues
- Execution Trace Logging: Runtime trace logging for cross-engine debugging, disabled in exported HTML
Bug Fixes
- Fixed export of image/audio variable values producing incorrect asset references and ID collisions
- Fixed ESC key closing exported standalone HTML applications
- Fixed hierarchy tree lines not rendering correctly for parent nodes with chevrons
- Fixed selection overlay not updating when changing aspect ratio presets in UI editor
- Fixed stale character image cache causing missing images in node previews
- Fixed Show in Content Browser not expanding a collapsed panel and not resizing an already-expanded one
- Fixed backslash paths in example project scripts breaking cross-platform compatibility
- Fixed UI preview scrolling: enabled scroll in row/column modes, restricted clipping to detached mode only
- Fixed preview scrollbar when detached character image extends off-screen
- Fixed deletion alert dialog overflow with long filenames
- Fixed script variables persisting across RunScript calls in standalone mode
- Fixed variable interpolation flicker during RunScript execution
- Fixed dialogue node overflow when unsaved changes asterisk appears
- Fixed dialogue node not growing when option text wraps to multiple lines
- Fixed dialogue node resize border desync when assigning audio, character or image
- Fixed dialogue node resizer desync when adding options after manual resize
- Fixed RunScript interface not refreshing for all nodes when script parameters change
- Fixed RunScript array output evaluation in runtime
- Fixed RunScript edges being deleted on project startup
- Fixed variable rename not persisting to disk for open files
- Fixed RunScript array parameter passing
- Fixed moved files being recreated at old path by auto-save
- Fixed variable values not updating when moving image/audio/character files
- Fixed selection outline radius for array length nodes
- Fixed stuck Comment creation after Cmd+C on Mac
- Fixed cursor jumping to end of input when pressing Delete during rename
- Fixed flow button showing purple highlight on focus and during drag
- Fixed stale dragging/selected state persisting in saved node data
- Fixed
timeElReferenceError in exported HTML audio handler
StoryFlow Editor v1.4.0
UI Customization, Unity & Godot Plugins
This is a major update introducing a full UI customization system for styling the runtime dialogue interface, dialogue preview with live sync, audio advance-on-end, custom font support, canvas context menus, and many quality-of-life improvements. The Unity and Godot engine plugins are now officially available alongside the existing Unreal Engine plugin - a major milestone for StoryFlow Editor. In the upcoming weeks, the focus will be on providing tutorials and example projects for all three game engines.
What's New
New Features
- Unity & Godot Plugins: Both engine plugins are now available
- UI Customization System: New .sfui file type for fully customizing the runtime dialogue interface with a dedicated editor featuring live preview and per-element styling
- Dialogue Preview: Preview dialogue nodes inside the UI editor with live sync as you edit
- Audio Advance-on-End: Auto-advance dialogue when audio finishes playing, with “Allow Skip” option
- Font File Support: Import and preview .ttf and .otf font files in the Content Browser
- Canvas Context Menu: Right-click nodes and edges on the canvas for quick actions
- Auto-Open Project: Mark a project to open automatically on app launch
- Comment Details Panel: Click a comment node to open a right panel with color picker and text editing
- Colored Nodes on Minimap: New setting to display comment and flow nodes with their colors on the minimap
Improvements
- Auto-Focus Dialogue Text Editor: Text editor automatically focuses when a dialogue node is opened
- Project Version Auto-Update: Project file version is updated to the current app version on open
- Per-Project Session Persistence: Play script selection and content browser path are now saved per-project and restored on reopen
- Click-to-Open Details: Clicking flow or start nodes on canvas opens their details panel
Bug Fixes
- Fixed JSON Export for Media Nodes: setBackgroundImage, playAudio, setImage, and setAudio nodes now correctly include assets in exports
- Fixed Undo History Duplication: Dialogue editor no longer pushes multiple history entries for a single action
- Fixed Folder Error Message: “Folder already exists” error no longer disappears instantly
- Fixed Float Array Contains: arrayContainsFloat now uses approximate comparison (epsilon 1e-6) instead of exact equality, matching engine plugin behavior
StoryFlow Editor v1.3.1
UE5 Plugin, Random Branch & Script Input/Output
The official Unreal Engine 5 plugin is now available, bringing StoryFlow dialogue directly into your game projects. This update also introduces the Random Branch node for weighted random outcomes, a full RunScript interface with parameter passing and output extraction, real-time WebSocket sync for game engine integration, resizable dialogue nodes, markdown file support, and many quality of life improvements.
What's New
New Features
-
Random Branch Node: Add randomness to your stories with weighted probability
- Randomly picks one of multiple output paths at runtime
- Configurable integer weights per output to control probability
- Add or remove outputs directly on the node
- Weights can be connected to integer variable nodes for dynamic control
-
RunScript Interface: Define a public interface for your scripts
- Mark variables as Input or Output in the variable details panel
- Input parameters appear as handles on the left side of Run Script nodes
- Output variables appear as handles on the right side for reading values back
- Mark flows as Exit Routes to route execution based on how the called script ends
-
WebSocket Sync: Push your project to game engines in real time
- Start a WebSocket server directly from the editor
- Connected game engine clients receive live project updates on sync
- View connected client details including engine name, version, and plugin version
- Individual disconnect buttons for each connected client
- Game Engine Plugins section with links to integration pages
-
Click-to-Advance Dialogue: New continuation option for dialogue nodes without buttons
- Dialogue nodes with no options show an output handle in the header
- At runtime, a pulsing “Click to advance…” indicator appears
- Clicking anywhere on the screen advances to the next connected node
-
Text Option Type: Display non-interactive text in dialogue options area
- Add read-only text blocks alongside buttons and inputs
- Supports variable interpolation and conditional visibility
- Useful for instructions, flavor text, or additional information
-
Markdown File Support: Create and edit Markdown files within your project
- Create .md files directly in the Content Browser
- Three view modes: edit, preview, and split (side-by-side)
- Supports GitHub-Flavored Markdown with tables, task lists, and code blocks
-
Resizable Dialogue Nodes: Adjust dialogue node size on the canvas
- Drag edges or corners to resize dialogue nodes
- Nodes automatically grow when adding options and shrink when removing them
- Dynamic minimum height based on visible content
-
Auto-Label Buttons: Automatically fill in button text from connections
- New toggle in canvas settings menu
- Connecting a button option to another dialogue node fills the button text with the target’s title
Improvements
- Unified Export Button: Export and WebSocket Sync merged into a single split button with format selection
- Resizable Variables & Flows Panels: Drag to resize the divider between Variables and Flows panels, with size persisted between sessions
- Tab Context Menu: Right-click tabs for Close, Close Other, and Close All options with keyboard shortcuts
- Close Other Tabs: Quickly close all tabs except the one you right-click
- Tab Persistence: Open tabs are remembered and restored across app restarts
- Content Browser State Persistence: Collapsed state remembered between sessions
- Audio Volume Persistence: Playback volume setting remembered between play sessions
- Keyboard Navigation in Node Menu: Navigate the node creation menu with arrow keys
- Open Variable Details from Get Nodes: Clicking a Get Variable node opens its details panel
- Spellcheck Setting: Toggle spellcheck on or off for text fields in settings
- Unsaved Changes Indicator: Dialogue nodes show an asterisk when they have unsaved changes
- New Options Added to Bottom: New dialogue options are now added to the bottom of the list instead of the top
- Folder Deletion File Count: Deletion confirmation now shows how many files are in a folder
- Changelog in Help Menu: Quick access to the changelog from the Help menu
- Localized String Variables: String variable values are now included in the localization table for JSON exports
- Dialogue Options Sections: Options area reorganized into separate text blocks, input elements, and button sections with independent reordering
- Settings Menu Stays Open: Settings dropdown no longer closes when clicking menu items
- Theme-Aware Scrollbars: Scrollbar colors now match the current theme
Bug Fixes
- Fixed Node Data Loss on File Open: Opening a script file could silently lose node settings like audio reset, image reset, and other properties
- Fixed Search Focus: Right-clicking to reopen the node creation menu now correctly focuses the search field
- Fixed Long Name Overflow: Long file names in selectors no longer stretch the dialogue editor layout
- Fixed Media Drag-and-Drop: Dragging media files from Content Browser onto dialogue nodes works correctly again
- Fixed DELETE Key in Text Fields: Forward-delete key now works properly in dialogue text editors
- Fixed Deletion Alert Layout: Long item names in deletion confirmations now properly truncate with ellipsis
- Fixed Editor Focus After ESC: Closing the variable suggestion menu with Escape properly restores editor focus
StoryFlow Editor v1.3.0
Flows, Arrays, Enums & Enhanced Dialogue Editor
A major update introducing Flows for reusable subflows within scripts, array and enum variable types, new image/character/audio variable types, input fields in dialogue options, and a redesigned variable editing experience.
What's New
New Features
-
Flows: Create reusable subflows within your scripts
- Add Entry Flow and Run Flow nodes to organize complex logic
- Dedicated Flows panel with search and collapsible UI
- Auto-create flows when pasting flow nodes
- Flows are saved per-file for organized project structure
-
Array Variables: Store and manipulate lists of values
- Create arrays of any variable type (boolean, integer, float, string, image, character, audio)
- Array operation nodes: Add, Remove, Get, Set, Length, Clear, Contains
- Get Random Element nodes for retrieving random items from arrays
- For Each loop node for iterating over array elements
- Array support for character file variables
-
Enum Variables: Define custom sets of named values
- Create enums with custom options for type-safe choices
- Enum conversion nodes for working with enum values
- Enum input type for dialogue options
- Automatic syncing of character enum values across files
-
Input Fields in Dialogue Options: Collect player input during dialogue
- Add text input fields to dialogue options
- Multiple connections supported from input Value handles
- Perfect for name entry, passwords, or custom responses
-
Image, Character, and Audio Variable Types: Store references to project assets
- Create variables that reference images, characters, and audio files
- File selector dropdowns for easy asset selection
- Image as built-in field for Get/Set Character Variable nodes
-
Character Variable Interpolation: Use character variables directly in dialogue text
- Reference character properties like {Character.Name} in dialogue
- Nested interpolation support for referencing variables within character variables
- Dynamic text updates based on character data
-
Variable Edit Panel: Redesigned variable editing experience
- New right sidebar panel alongside the dialogue editor
- Unified Variable/Category Details panel
- Clickable value display for quick editing
- Improved panel styling and layout
-
Collapsible Panels: Better workspace management
- Collapsible Content Browser with minimized bar
- Collapsible Variables and Flows panels
- Unified styling across all panels
-
Compatible Filter: Find compatible nodes faster
- New checkbox filter in node creation menu
- Shows only nodes compatible with your current connection
-
Runtime Error Bar: Better error feedback during playback
- Simplified error messages for easier debugging
- Clear visual indication when errors occur
Improvements
- Variables in Undo/Redo: Variable changes now tracked in history system
- Keyboard Navigation: Navigate variable suggestions with arrow keys and Enter
- Multiline Dialogue Options: Options now support multiple lines of text
- Drag-and-Drop Reordering: Reorder character variables by dragging
- Delete Button on Variable Chips: Quickly remove variables from dialogue text
- Float Precision: Improved accuracy for decimal arithmetic in runtime
- Redesigned Variable Creation: New form-based interface for creating variables
- Redesigned Variable Type Dropdown: Single-column layout for easier selection
Bug Fixes
- Fixed Set Background Node: Resolved file selector styling and drag-drop issues
- Fixed Variable Suggestion Menu: Escape key now properly closes the menu
- Fixed Memory Leak: Resolved IPC listener leak in Content Browser
StoryFlow Editor v1.2.2
Quick Node Creation & Set Character Variable Node
This update introduces the Set Character Variable node for modifying character data, edge drop auto-connect for faster node creation, and character variables in the runtime debugger. Plus numerous bug fixes and polish improvements.
What's New
New Features
-
Set Character Variable Node: Modify character file variables directly from your script
- Change character properties like Name during gameplay
- Dynamically update character data based on story events
-
Edge Drop Auto-Connect: Create nodes faster with automatic connection handling
- Dropping a connection on empty space shows a pending connection line
- New nodes automatically connect to the pending connection
-
Character Variables in Runtime Debugger: View and debug character data while testing
- Character variables now appear in the runtime debugger
- Live updates when character Name changes during playback
-
Get Character Variable Improvements: Name is now selectable as a variable in the Get Character Variable node
Improvements
- Reduced Notification Clutter: Removed unnecessary success toasts for file saves
- Variable Text Editor Polish: Improved UI and visual polish in the variable text editor
Bug Fixes
-
Fixed Dialogue Text Input: Pressing Enter now correctly adds new lines in the dialogue text field
-
Fixed Variable Picker Dropdown: Resolved dropdown overflow clipping in the Dialogue Editor
-
Fixed Folder Deletion: Deleting a folder now properly closes any open files from that folder in editor tabs
-
Fixed Folder Navigation: Resolved folder navigation issues on different operating systems
-
Fixed File Loading: Fixed errors that could occur when loading files with certain path formats
-
Fixed Projects List: Resolved an issue where the projects list could disappear
-
Fixed Undo/Redo: Undo and redo no longer restore invalid references to deleted files
-
Fixed JSON Export: Resolved potential export conflicts with character filenames
-
Fixed Alternative Controls Mode: Edge drop auto-connect now works correctly in alternative viewport controls mode
StoryFlow Editor v1.2.1
Now Available on Linux
StoryFlow Editor now runs natively on Linux! This update brings full Linux support with AppImage distribution, proper platform-specific UI elements, and ensures compatibility with case-sensitive Linux file systems.
What's New
New Features
- Linux Native Support: StoryFlow Editor is now officially available on Linux
- Native AppImage builds for easy installation without dependencies
- Proper Linux-specific UI elements and window controls
- File browser integration labeled correctly for Linux environments
- Full compatibility with case-sensitive file systems
Bug Fixes
- Fixed Folder Color Updates: Folder colors now update instantly in the content browser when changed
- Fixed File Reference Updates: Resolved multiple issues where file references were not updating correctly
StoryFlow Editor v1.2.0
Audio System, Characters & Enhanced Dialogue Editor
A major update introducing full audio support with playback controls, a complete character system with custom variables, and a redesigned dialogue editor with improved variable insertion. Plus new nodes, one-time options, and additive selection.
What's New
New Features
-
Full Audio System: Complete audio support throughout your stories
- Add audio files (MP3 and WAV formats) to your project content
- Attach audio to dialogue nodes with in-editor playback preview
- Loop audio option for background music and ambient sounds
- Audio volume controls in the runtime player
- Audio indication in runtime debugger for testing
- Reset checkbox to clear audio from dialogue nodes
-
Play Audio Node: Dedicated node for triggering audio playback at any point in your story flow
-
Character System: Create and manage characters for your stories
- Create characters directly in the content browser
- Add custom character variables for dynamic character data
- Editable character names in character editor and dialogue selector
- Characters integrated into dialogue nodes and runtime
- Get Character Variable node for reading character data in your scripts
-
Set Background Image Node: New node to dynamically change background images during story execution
-
Improved Variable Text Editor: Redesigned dialogue text editor
- Rich variable insertion directly in dialogue text and options
- Visual variable type indicators within the editor
- Deletion warnings when removing variables used in dialogue text
- Improved cursor handling and text editing experience
-
One-Time Options: Dialogue options that automatically hide after being clicked, perfect for exploration-based narratives
-
Additive Selection: Hold Shift, Ctrl, or Cmd to add nodes and edges to your current selection
-
Connection Style Settings: Customize edge appearance with new connection style options
- Edge type setting now applies to connection line while dragging
-
Comment Node Grouping: Moving a comment node now moves all nodes positioned inside it
Improvements
- Redesigned Dialogue Editor: More compact layout with collapsible title block for better screen utilization
- Audio Export Support: Audio files included in both HTML and JSON exports
- Character Export Support: Character data and dialogue properties exported to JSON format
- Improved Performance: General performance improvements throughout the editor
- Enhanced Styling: Refined visuals for nodes, dropdowns, runtime debugger, and content browser elements
- Background Image Reset: Reset checkbox added to clear background images from dialogue nodes
Bug Fixes
-
Fixed Memory Leak: Resolved an issue that could cause the editor to slow down over time
-
Fixed Selection Box Issues: Fixed selection box getting stuck when pressing multiple mouse buttons simultaneously
-
Fixed Project Loading: Resolved errors that could occur when loading projects
-
Fixed Dialogue Editor Sync: Fixed lost input when typing quickly in the dialogue editor
-
Fixed Content Browser Navigation: Fixed issues with “Show in Content Browser” not scrolling correctly and path not updating after folder moves
-
Fixed Audio Playback on macOS: Resolved audio playback issues in the dialogue editor on macOS
-
Fixed Export Errors: Fixed errors in exported HTML files
-
Fixed Dropdown Menus: Dropdown menus no longer appear below other nodes
-
Fixed Drag and Drop: Resolved issues with audio and image file drag-and-drop operations
-
Fixed Save Indicator: Save operation now correctly clears the unsaved changes indicator
-
Fixed Favorites Folder Color: Folder colors no longer reset after renaming
-
Fixed Variable Button: Variable button now works correctly when options section is collapsed
StoryFlow Editor v1.1.2
Enhanced Variables System & Project Organization
This update brings powerful new ways to organize your projects and variables. Introducing variable categories, search, and reordering capabilities, along with folder favorites and colors for better project structure. Plus, new background style options and the ability to rename projects directly.
What's New
New Features
-
Variable Categories: Organize your variables into custom categories for better project management and easier navigation in complex projects
-
Variables Search: Quickly find any variable with the new search functionality in the variables panel
-
Variables Reordering: Drag and drop variables to reorder them within the panel
-
Quick Variable Creation: Right-click anywhere inside the variables panel to instantly create a new variable
-
Favorite Folders: Mark frequently used folders as favorites for quick access in the content browser
-
Folder Colors: Color-code your folders for visual organization and faster navigation
-
Background Style Options: Choose between Lines, Dots, and Cross grid patterns in editor settings for your preferred visual style
-
Project Renaming: Rename your projects directly from the editor window
-
Image Drag and Drop: Drag images directly onto dialogue nodes to quickly assign background images
Improvements
- New variables now appear at the top of the list instead of the bottom
- Unified comparison operator symbols across all node types for consistency
- Standardized behavior of various search inputs throughout the application
- Removed border animation over nodes editor canvas for cleaner visuals
- Updated folder icons with improved design
- Updated dependencies for better performance and security
Bug Fixes
-
Fixed Variable Type Colors: Variable type color squares now display correctly in the variables panel
-
Fixed Variables Panel Scrolling: Resolved issue where scrolling would break when dragging variables outside the panel
-
Fixed Content Browser Glitch: Fixed visual glitch caused by stale folder data in the content browser
-
Fixed Dialogue Editor Panel: Dialogue editor panel now correctly collapses when reopening files
-
Fixed Folder Drag and Drop: Prevented folders from being dragged over themselves, which could cause issues
-
Fixed Float Comparison: Corrected float comparison evaluation in runtime for accurate numerical comparisons
StoryFlow Editor v1.1.1
Quality of Life Improvements & Bug Fixes
This update brings several quality of life improvements including drag-and-drop file importing, keyboard shortcuts for node creation, snap to grid functionality, and multiple bug fixes to enhance stability and user experience.
What's New
New Features
-
Drag-and-Drop File Import: Import files by dragging them directly into the content browser to quickly add external files to your project
-
Quick Node Creation Hotkeys: Create nodes instantly with keyboard shortcuts
- D + Click → Create Dialogue node
- R + Click → Create Run Script node
- B + Click → Create Branch node
- E + Click → Create End node
- C + Click → Create Comment node
-
Snap to Grid Setting: New option to snap nodes to grid in the editor, keeping your node graphs organized with automatic grid alignment
Improvements & Bug Fixes
-
Real-Time Dialogue Updates: Dialogue nodes now update instantly when changes are made in the dialogue editor
-
Fixed Node Creation Menu: Resolved issue where right-clicking would not open the node creation menu in default control scheme
-
Fixed Comment Node Input: Comment nodes are no longer draggable through their input field - text input now works correctly without triggering node movement
-
Fixed Deletion Alert Input: Enter key now works correctly inside file deletion confirmation dialogs
-
Fixed Node Selection Visual: Node selection box now hides when not actively dragging for reduced visual clutter
-
Fixed Play Window Loading State: Resolved issue where the play window could get stuck in loading state
-
Fixed Menu Bar Visibility: Correctly hide menu bar for all windows for a consistent UI experience
-
Fixed Developer Tools Access: Blocked dev tools in play window to prevent accidental opening during playtesting
-
About Window Behavior: About window now stays on top of other windows for easier access to version information
StoryFlow Editor v1.1.0
Now Available on macOS + Enhanced Variable System
StoryFlow Editor is now officially available on macOS! This major update also introduces float and string variable types, powerful string manipulation nodes, customizable settings, and numerous quality of life improvements for a smoother editing experience.
What's New
New Features
-
macOS Support: StoryFlow Editor is now officially available on macOS
-
Float and String Variable Types: Expanded variable system now supports decimal numbers and text
-
Variable Conversion Nodes: Convert between different variable types seamlessly
-
String Manipulation Nodes: Powerful new nodes for working with text
- Concatenate Node: Combine multiple strings together
- Contains Node: Check if a string contains specific text
- Length Node: Get the length of a string
- To Upper/Lower Case Nodes: Convert text to uppercase or lowercase
-
Enhanced Math Operations: Additional integer math nodes
- Multiply Node: Multiply two integer values
- Divide Node: Divide two integer values
- Random Integer Node: Generate random numbers within a range
-
Variables in Dialogue Editor: Use variables directly within dialogue text
- Reference any variable in dialogue text and options using {variableName} syntax
-
Customizable Editor Settings: New settings panel for personalized workflows
- Viewport Controls: Choose between different navigation styles
- Undo/Redo Shortcuts: Customize keyboard shortcuts for undo/redo
- Redesigned settings menu with improved organization
- Settings persist across sessions
-
Context Menus for Input Fields: Right-click menus in text input areas
- Cut, copy, paste, and select all functionality
- Available in dialogue editor text fields
- Available in projects window input fields
- Consistent with native application behavior
Improvements
- Alternative Variable Color Scheme: Optional Unreal Engine-style variable colors
- Force Dark Theme: All native UI elements now consistently use dark theme
- Path Validation: Added validation for project location paths
- UI/UX Refinements: Various visual and interaction improvements
StoryFlow Editor v1.0.2
Bug Fixes
This update fixes an issue where integer variables could not be converted to global scope, and enables the Delete key in dialogue text fields.
What's New
Bug Fixes
-
Fixed Integer Variable Global Conversion: Resolved issue where converting an integer variable to global scope would fail
- Integer variables can now be properly converted to global using the right-click menu
- Ensures variables maintain their correct type when transitioning between local and global scope
- No more conversion errors when working with integer variables
-
Fixed Delete Key in Dialogue Editor: The Delete key now works correctly in dialogue text fields
- Previously only Backspace worked for deleting text
- Delete key now functions as expected when editing dialogue
- Improves text editing workflow in the dialogue editor
StoryFlow Editor v1.0.1
Quality of Life Improvements
This update improves the workflow with drag-and-drop support for Run Script nodes, cross-platform path fixes, enhanced project name validation, and bug fixes for the dialogue editor.
What's New
New Features
-
Drag and Drop Run Script Nodes: Drag .sfe script files directly onto Run Script nodes to quickly assign them
- Streamlines the workflow when working with multiple scripts
- Drop scripts directly from the Content Browser
- No need to manually open the script selector
-
Quick Run Script Node Creation: Drag .sfe script files onto the canvas to instantly create a new Run Script node
- Automatically creates the node and assigns the script
- Faster story graph creation with fewer clicks
- Works with scripts from the Content Browser
Improvements
-
Project Name Validation: Added validation for project name input field
- Prevents invalid characters and names
- Provides clear feedback when creating new projects
- Ensures project names work across all platforms
-
Updated Dependencies: Updated project dependencies for improved stability and performance
Bug Fixes
-
Fixed Path Normalization: Resolved path handling issues across Windows, macOS, and Linux
- Scripts and assets now load correctly on all platforms
- Fixed file path errors that could occur on cross-platform projects
- Improved reliability when opening projects created on different operating systems
-
Fixed False “Unsaved Changes” Detection: Fixed issue where the dialogue editor incorrectly showed unsaved changes
- Editor state now properly tracks when changes are actually made
- No more false warnings when switching between files
- Improved reliability of the save indicator
StoryFlow Editor v1.0.0
Steam Release Update
This major release introduces global variables that work across all your scripts, integer variables for tracking numbers and scores, and a powerful runtime debugger for testing your stories. New logic nodes make branching more flexible, JSON export enables game engine integration, and the dialogue editor has been completely redesigned.
What's New
Major New Features
-
Global Variables: Create variables that persist across all scripts in your project
- Switch any variable between local and global scope with one click
- Global variables are shared across all story scripts
- Perfect for tracking player stats, inventory, and persistent story flags
-
Integer Variables: Track numbers, scores, and quantities with the new integer variable type
- Use Greater Than, Less Than, and Equal nodes to compare numbers
- Add and subtract with Plus and Minus nodes
- Ideal for health systems, currency, counters, and scoring
-
Runtime Debugger: Test and debug your stories with real-time variable inspection
- Watch variables change as you play through your story
- See the call stack to understand script execution flow
- Quickly identify and fix issues in complex story flows
-
JSON Export: Export your stories for integration with Unity, Unreal Engine, Godot, and custom engines
- Preserves your entire story structure in a portable format
- Export alongside HTML or use exclusively for game engine projects
- Engine plugins coming soon to simplify integration
-
Comment Node: Add notes and documentation directly in your story graphs
- Document complex logic and story branches
- Leave reminders for yourself or team members
- Improve project organization and maintainability
Boolean Logic Nodes
- Added Equal node to compare two boolean values
- Added OR node for “either/or” logic conditions
- Added AND node to require multiple conditions
- Improved Branch node to handle missing connections gracefully
Dialogue Editor
- Completely redesigned interface with improved layout
- Drag and drop to reorder dialogue options
- “Reset Changes” button shows when you have unsaved edits
- Added scrollbar for long dialogue text
- Drag images directly from Content Browser into dialogue nodes
- Support for multiple lines in dialogue text
- Improved state persistence when switching between files
Content Browser
- Duplicate files and folders with right-click menu
- Drag and drop files between folders
- Rearrange files by dragging in the tree view
- Search bars in script selectors for finding files quickly
- File extensions now hidden for cleaner appearance
- Improved folder rename handling
Variables Panel
- Drag variables directly onto the canvas to create Get/Set nodes instantly
- Visual indicator shows when dragging a variable over the editor
- Redesigned variable type indicators for better clarity
- Fixed state issues when interacting with integer inputs
Editor Tabs
- Drag and drop tabs to reorder your open files
- Automatic scrolling when switching between many open files
- Horizontal scroll for managing lots of tabs
- Improved tab management and workflow
Image Editor
- Zoom in and out on images with mouse wheel
- View image dimensions and file size
- Automatically scroll to show the full image
- Improved image loading performance
Runtime & Playback
- Script nodes are now fully modular and reusable during playback
- Fixed issues with scripts not executing correctly
- Improved Play button state management
- Better error handling during story execution
Undo/Redo System
- Full undo/redo support throughout the editor
- Fixed undo behavior after reordering dialogue options
- Fixed undo when renaming files
- Improved history tracking for all editing actions
User Interface
- Improved styling throughout the editor
- Better visual feedback when dragging elements
- Smoother animations and transitions
- Fixed various layout issues with long file names
- Improved spacing and alignment across the interface
Bug Fixes
- Fixed incorrect value comparisons in Greater Than and Less Than nodes
- Fixed issues with dialogue images not loading correctly
- Fixed Play button getting stuck in wrong state
- Fixed background image selector not closing properly
- Fixed vertical scrolling issues when dragging
- Fixed various crashes and stability issues
- Improved overall performance and responsiveness
Project Management
- Added default save location when creating new projects
- Documentation button in menubar for quick access to guides
- Improved project switching between different stories
- Better validation when opening projects
StoryFlow Editor 0.0.2
Images Support Update
This release adds full support for .png, .jpg, and .jpeg images throughout the editor, allowing you to include images in dialogues and runtime. The interface has been updated with a modern design that improves menus, buttons, and window layouts. The Content Browser now allows importing files. Project management, context menus, and editor tabs have been improved, and many bugs have been resolved for better overall performance.
What's New
User Interface & Styling
- Redesigned the window title bar for a cleaner, modern appearance
- Updated buttons, menus, and the “About” window for better clarity and usability
- Highlighted “Delete” buttons in context menus with red for better visibility
Images & Content Browser
- Major new feature: Added full image support
- Enhanced image previews and added support for .png, .jpg and .jpeg files
- Added ability to import multiple images at once
- Renamed “Story Script” to “Script” for clarity
- Added “Show in Content Browser” button for quick navigation
- Fixed folder renaming and file path issues
Dialogues & Nodes
- Added image support in dialogues and runtime, including image exporting
- Fixed issues where dialogue images failed to load or caused incorrect file changes
- Removed the max connection limit from “Run Script” nodes
- Fixed script self-reference errors after renaming files
Menus & Editor Tabs
- Improved context menus with correct positioning and proper updates
- Added horizontal scrolling for Editor Tabs and automatic scrolling when switching files
Project & File Validation
- Added project file validation to prevent errors when opening
- Added project version checking to ensure compatibility
Editor Features
- Added complete “About StoryFlow Editor” window with platform information
- Improved project switching for smoother workflow
Bug Fixes
- Fixed image preview and updating issues after running scripts
- Corrected layout and width issues in menus and nodes
- Improved export notifications and fixed indicators on edited files
- Fixed errors when loading .sfe files at startup
StoryFlow Editor 0.0.1
Alpha Release with Core Features
The initial release of StoryFlow Editor with essential storytelling tools and visual scripting capabilities.
Development Begins
Stay Updated
Get notified about new features, updates and tips for creating better interactive stories.
We respect your privacy. Unsubscribe at any time.
Unreal Engine Plugin