General Workflow

The process behind working with Story Framework, and understanding how systems communicate with one another.


SF uses Actor Components to communicate and drive majority of all systems found within this blueprint framework. These actor components are designed to do all the heavy lifting, keeping 95% of all blueprints and code outside of the player controller and/or player character blueprint class. These actor components are as follows:

Understanding that functionality is driven through these Actor Components will make customizing and tweaking core SF logic easier, and faster.


SF's interaction is utilized by using "Interactables". These interactables contain an InteractableData_S structure variable, which holds all of the possible interaction settings and combinations. Alternatively, setting up a custom actor and implementing the SFInteraction_BPI blueprint interface (BPI) will register that actor as an "Interactable", allowing you to utilize the InteractedWith & LoadFromDataString BPI functions.

Learn about Blueprint Interfaces and Actor Components inside Unreal, and how they're used.


Player inputs are handled using Input Mapping Contexts (IMC), and swapping between different IMC's depending on the gameplay situation. For instance, when the player opens up their inventory, SF will switch the default "Gameplay_IMC" to the "Inventory_IMC". This avoids any overlapping inputs throughout gameplay, and keeps the whole process of creating new IMC's linear and understandable to use. All of the different input events and functions are called from within the player controller blueprint. Input actions are essentially the only logic inside either of the player character, or player controller blueprints inside SF

Find out more about Enhanced Inputs and how they handle input actions within Unreal.


Color coded graphs/comments inside SF's blueprints Some of SF's blueprints use orange tinted graphs and comments to indicate that the functionality inside of those graphs/comments are more so for demonstration purposes, meaning that it can be removed or disabled. Graphs/comments that are tinted black should be considered essential to it's functionality, with some exceptions being logic that creates and plays sounds.

Last updated