a coworker recently pointed me to Skookum and i while i was peeking through the docs the “oh” moment came at this:
concurrent-block = sync | race | branch | divert
While this concept of “latent” execution can also be handled by other languages, c# + Unity CoRoutines comes to mind, i never have seen it work “nicely” and in a easy to understand way.
So now i try to understand the workflow to use Skookum and UE4 blueprints. The videos so far where not this helpfully, since the ai bot showcase don’t represent your normal Ai in UE4 and i could not find a guide how Skookum and blueprints should be utilized in practice?
The normal UE4 showcase would be a blueprint, with a bunch of components that are wired together via event nodes. Ideally the components are reusable and there logic might not depend on the top level BP logic. So that you can easily slap components together to quickly form a new object, thats also similar to how Unity works.
So we mainly let all our components send event to the “owner” and the top level BP handles the object specific logic, utilizing the component events.
The main “headache” in BP comes from very complex if/else and loop + array operations. More subtle is also the growing “visual” complexity you have to handle, depending on how big your top level BP logic becomes.
Here are my main questions atm:
How does Skookum fit into BP event handling? Do i just do the heavy lifting in script and still wire the logic together in BP or can Skookum handle BP/Component events as well in a elegant manner?
Can Skookum handle the BP ctors or do i always need a working BP skeleton and let the script handle the more complicated parts?
Can Skookum handle EventDispatchers?
Is there a easy, fast way to create custom BP nodes in Skookum?
Are there any workflow examples? Would be nice to see how skookum would handle the security camera and door examples, where multiple components communicate via events/interfaces/dispatchers.
As you can see i’m mainly concerned how the workflow/communication between blueprints, components and level is handled via Skookum or if its better to keep the event skeleton in BP nodes and just use Skookum for the internal logic? So just replacing the “web” of nodes that actually do “stuff”, with a script.