All Projects → MothCocoon → FlowGraph

MothCocoon / FlowGraph

Licence: MIT license
Design-agnostic node system for scripting game’s flow in Unreal Engine

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to FlowGraph

Ue4voxelterrain
[WIP] Unreal Engine 4: Smooth voxel terrian example
Stars: ✭ 415 (-28.08%)
Mutual labels:  unreal, unreal-engine
Ueviewer
Viewer and exporter for Unreal Engine 1-4 assets (UE Viewer).
Stars: ✭ 1,083 (+87.69%)
Mutual labels:  unreal, unreal-engine
Unrealcpp
Unreal Engine 4 C++ examples
Stars: ✭ 490 (-15.08%)
Mutual labels:  unreal, unreal-engine
BMeshUnreal
Based on BMesh for Unity (https://github.com/eliemichel/BMeshUnity). It provides a half-edge data structure inspired by Blender's BMesh, which makes many mesh manipulation operations simpler. Especially useful when using mesh data for logical instead of visual purposes (e.g. irregular grids)
Stars: ✭ 45 (-92.2%)
Mutual labels:  unreal, unreal-engine
Ue4 Style Guide
An attempt to make Unreal Engine 4 projects more consistent
Stars: ✭ 2,656 (+360.31%)
Mutual labels:  unreal, unreal-engine
Launchpad
An open-source game launcher for your games
Stars: ✭ 322 (-44.19%)
Mutual labels:  unreal, unreal-engine
Unrealnetworkprofiler
A modern WPF based Network Profiler for Unreal Engine.
Stars: ✭ 29 (-94.97%)
Mutual labels:  unreal, unreal-engine
ue5-style-guide
An attempt to make Unreal Engine 4 projects more consistent
Stars: ✭ 2,892 (+401.21%)
Mutual labels:  unreal, unreal-engine
Ue4 Gitignore
A git setup example with git-lfs for Unreal Engine 4 projects.
Stars: ✭ 150 (-74%)
Mutual labels:  unreal, unreal-engine
Unreal Library
A decompiler library for Unreal packages such as .upk and .u files, supporting Unreal Engine 1, 2, and 3.
Stars: ✭ 123 (-78.68%)
Mutual labels:  unreal, unreal-engine
Ue4 Binary Builder
An application designed to create installed Unreal Engine builds (aka Rocket builds) from Unreal Engine GitHub source.
Stars: ✭ 292 (-49.39%)
Mutual labels:  unreal, unreal-engine
Unreal Polygonal Map Gen
An Unreal Engine 4 implementation of the Polygonal Map Generator for generating islands found at http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/
Stars: ✭ 229 (-60.31%)
Mutual labels:  unreal, unreal-engine
QTM-Connect-For-Unreal
Unreal plugin for real-time streaming from Qualisys Track Manager
Stars: ✭ 18 (-96.88%)
Mutual labels:  unreal, unreal-engine
Gascontent
Repo to gather all Gameplay Ability System content for UE4
Stars: ✭ 398 (-31.02%)
Mutual labels:  unreal, unreal-engine
TransMat
Blender Python - Instantly Recreate Blender Shader Node Trees as Unreal Materials
Stars: ✭ 30 (-94.8%)
Mutual labels:  unreal, unreal-engine
Pbcharactermovement
HL2-style, classic FPS movement for Unreal Engine 4 implemented in C++
Stars: ✭ 582 (+0.87%)
Mutual labels:  unreal, unreal-engine
ProceduralDungeon
This is an Unreal Engine 4/5 plugin to generate procedural dungeon.
Stars: ✭ 95 (-83.54%)
Mutual labels:  unreal, unreal-engine
gamedevguide
Game Development & Unreal Engine Programming Guide
Stars: ✭ 314 (-45.58%)
Mutual labels:  unreal, unreal-engine
Sluaunreal
lua dev plugin for unreal engine 4
Stars: ✭ 1,195 (+107.11%)
Mutual labels:  unreal, unreal-engine
Climbing Movement Component
Climbing Movement Component for Unreal Engine.
Stars: ✭ 181 (-68.63%)
Mutual labels:  unreal, unreal-engine

Concept

Flow plug-in for Unreal Engine is a design-agnostic event node editor. It provides a graph editor tailored for scripting flow of events in virtual worlds. It's based on a decade of experience with designing and implementing narrative in video games. All we need here is simplicity.

The aim of publishing it as open-source project is to let people tell great stories and construct immersive worlds easier. That allows us to enrich video game storytelling so we can inspire people and make our world a better place.

Flow101

  • A single node in this graph is a simple UObject, not a function like in blueprints. This allows you to encapsulate the entire gameplay element (logic with its data) within a single Flow Node. The idea is that your write a repeatable "event script" only once for the entire game!
  • Unlike blueprints, Flow Node is async/latent by design. Active node usually subscribe to delegates, so it can react to event by triggering output pin (or whatever you choose to).
  • Every node defines its own set of input/output pins. It's dead simple to design the flow of the game - just connect nodes representing features.
  • Developers creating a Flow Node can call the execution of pins any way they need. API is extremely simple.
  • Editor supports convenient displaying debug information on nodes and wires while playing a game. You simply provide what kind of message would be displayed over active Flow Nodes - you can't have that with blueprint functions.
  • It's up to you to add game-specific functionalities by writing your nodes and editor customizations. It's not like a marketplace providing the very specific implementation of systems. It's a convenient base for building systems tailored to fit your needs.
  • Read documentation on the project wiki. I'd recommend starting from reading about design philosophy.
  • It's easy to include plugin in your own project, follow this short Getting Started guide.

In-depth video presentation

This 24-minute presentation breaks down the concept of the Flow Graph. Trust me, you want to understand concept properly before diving into implementation.

Introducing Flow Graph for Unreal Engine

Acknowledgements

I got an opportunity to work on something like the Flow Graph at Reikon Games. They shared my enthusiasm for providing the plugin as open source and as such allowed me to publish this work and keep expanding it as a personal project. Kudos, guys! Reikon badly wanted to build a better tool for implementing game flow rather than level blueprints or existing Marketplace plug-ins. I was very much interested in this since the studio was just starting with the production of a new title. And we did exactly that, created a node editor dedicated to scripting game flow. Kudos to Dariusz Murawski - a programmer who spent a few months with me to establish the working system and editor. And who had to endure my never-ending feedback and requests.

I feel it's important to mention that I didn't invent anything new here, with the Flow Graph. It's an old and proven concept. I'm just one of many developers who decided it would be crazy useful to adopt it for Unreal Engine. And this time, also to make it publicly available as an open-source project.

  • Such simple graph-based tools for scripting game screenplay are utilized for a long time. Traditionally, RPG games needed such tools as there a lot of stories, quests, dialogues.
  • The best narrative toolset I had the opportunity to work with is what CD Projekt RED built for The Witcher series. Sadly, you can't download the modding toolkit for The Witcher 2 - yeah, it was publically available for some time. Still... you can watch the GDC talk by Piotr Tomsiński on Cinematic Dialogues in The Witcher 3: Wild Hunt - it includes a brief presentation how Quest and Dialogue editors look like. It wouldn't be possible to create such an amazing narrative game without this kind of toolset. I did miss that so much when I moved to the Unreal Engine...
  • At some point I felt comfortable enough with programming editor tools so I decided to build my own version of such toolset, meant to be published as an open-source project. I am thankful to Reikon bosses they see no issues with me releasing Flow Graph, which is "obviously" similar to our internal tool in many ways. I mean, it's so simple concept of "single node representing a single game feature"... and it's based on the same UE4 node graph API. Some corporations might have an issue with that.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].