This presentation for the Godot Con 2026 in Amsterdam is about
"Rokojori Action Library - Actions: Next-Level-Signals for Signals"
- App & Game Dev from Berlin
- Godot Meetup Berlin
- Released Dash Cup Kickers as Indie
- Website & Tutorials around Game Dev and Godot
- Developing the Rokojori Action Library
ACTIONS
GAME LOGIC
RESPONSIVE UI
VFX/SHADERS
PROCEDURAL
TOOLS & MORE
- Game Dev Framework
- Covering lots of areas
What needs to be solved?
- Arcade type game
- Many different tricks
- Different shots
- Modifiers & boosts
- Signals but what then?
- Animations?
- One class for all?
- For each type a class?
Actions are the solution!
- Not an Input Binding
- Not a character/state machine action
- Not a signal replacement
- Not C# Action
- Rokojori Action
- Godot Node (not 2D/3D) as Function
- One method named Trigger()
- No parameters
- Members parametrize the action
- Can be primitive like numbers
- But also references to nodes
- Or resources
- PlaySound: AudioStreamPlayer3D to play a sound
- PlayParticles: GPUParticles3D to run a particle system
- Nodes add Actions as exportable members
- Nodes decide through logic when to call it
- Enemy connects to OnHit
- OnHit contains Play Hit Sound
- Is one action enough?
- One action to trigger actions
- Child actions are triggered automatically
- Enemy connects OnHit Action
- OnHit contains PlayXYZ
- Special extra shot in Dash Cup Kickers
- Has multiple delays
- Can't be animated, depends on input
- Needs dynamic async sequencing
- Immediate effects not enough
- Effects need to be sequencable
- Voila!
- Extending actions
- DispatchStart and DispatchEnd
- Delay: For pausing, waiting
- Flash: Blinking or hit impacts
- Shake: Animate movement
- ActionList for immediate execution
- Two containers for sequencing
- Executing child sequence actions
- Sequence:One by one
- Parallel:Wait for first/last
- Disable Physics
- Parallel effects
- Clean up after a time
- Signals: tells messages
- Actions: executes on events
- For orchestration
- Serializable w/o code
- Not connecting graphs
- Not passing slot
- Order is flow
- Hierarchal organization
- No additional windows
- Not hiding
- Directly testing tweens
- WinterTales season change
- Replay needs recorded events
- Netcode needs similar events
- All actions networked
- Only one generic RPC
- No special networking needed
- For normal lists/sequences
- Only the root needs to be synced
- Mechanism to prepare before Trigger()
- Depends on Send/Receive
- Multiplayer in 1-2 weeks
- There are some
| ⚠ PROBLEMS | ✓ SOLUTIONS |
|---|---|
| DYNAMIC OBJECTS | Interactor/interactable pattern |
| DYNAMIC OBJECTS | Dedicated action-modifying actions |
| METHOD WRAPPERS | Manual/generated actions |
| INDIRECTION | Avoid! Use object references/singletons |
| LOGIC | Avoid! Replace by code units |
- Also:In-editor active animation
-
ACTIONS & ACTION LIST
EASY TO IMPLEMENT
QUICK RESULTS
WEBSITE/EXAMPLE PROJECT
GIT REPOSITORY
ADVANCED ECO SYSTEM
- On your own: Roughly 1hour
- Rokojori Level: Very complex
- Often needed types
- Tested
- C# to GDScript Transpiler
- CompositorFX Update
- Networking
- Swarm Example
- Profiling
- Thank You!







