How can we help you?
There are a lot of contexts where the Events System can be a life-changer when it comes to developing a complex system or prototype mechanics.
- I want to send a variable to the other Blueprints.
- How can I let other actors/HUD know when something happens?
- Can I broadcast delegates/events globally?
- Creating Systemic Game worlds inside Unreal
- I find Cast-To Nodes painful to use
- Reduce the complexity and size of your Blueprints
We all know how painful all those 'Cast-to' nodes can you inside your Blueprints. They simply disturb your clean and elegant nodes with a bunch of additional information you don't really need or want. Also casting sometimes blocks extensibility and you will end up maintaining multiple branches to add functionality to it, which is something we all hate even more than casting nodes.
Fortunately, those days are finally over. The Events System provides an extensible pattern that allows the developer to use Events to trigger functionality across multiple blueprints without creating dependencies and completely eliminate casting.
Everybody is familiar with debugging old blueprint code. First, you start asking yourself who wrote such a messy code even though you already know it was you. Then you start going over it node by node and ask yourself if there is no other way to clean this up a bit. Eventually, you decide you will look over this the next day or you suddenly decide that bug is not really that important anyway.
This happens due to a lot of factors, the most common being messy blueprints or inextensible code. It's so much easier to work with fluent and easy to read code then you think. You will be amazed.
Reduced Build Size
Did you know each time you use a 'Cast-to' node inside a blueprint, it will need to include the whole other blueprint inside? You can read all about it on their own forum or you can send us an email to discuss it.
That's actually how memory works in raw C++ (similar to #include "OtherBlueprint.h" if you are familiar with it). This is not particularly bad, but it can get ugly pretty fast (for example including big blueprints with lots of logics, such as player classes). Here is one more place where our Events System shines. By using events, none of the blueprints, need to know about each other, they all need to know about the event itself.
How we solve the problems
We provide the most simple and intuitive solution while maintaining the performance of the code our main priority.
With our plugins, developers can achieve action-driven systems with just 3 simple steps.
- Create Events in the form of assets inside their project.
- Add Listener Components where you want to receive the event (it can be literally anywhere Actor BP, Component BP, HUDs)
- Call Invoke the action takes place during your gameplay.
Bonus: send data through the events with the built-in Payloads.
The benefits and results
Using this method, you can implement your logic inside your the Listener's delegate without additional complexity.
Also, this way you will keep your Blueprints clean and organized while keeping their loading size small. You will be able to abstract the behavior of each functionality individually.
Why is this the best way
There are a lot of reasons to choose this method, the most important are:
- The project will be incredibly well organized. The event structure will help you to have a clean way to handle complexity.
- Unlike most of the assets from the marketplace, it can be integrated into any of your projects at any time.
- Replacing Blueprints dependencies with event calls will improve your build size.
- You can add comments to document your events, so other team members can use them as well, improving your communication and workflow.
- Well documented with screenshots and step-by-step instructions for every feature.
- Clean blueprints like never before
- Reduced build size drastically
- Ideal for huge systemic games
- Lightning-fast prototyping
- Support within 24 hours of your message
- Top quality demo and tutorial videos from partnerships
- Continues updates according to your needs
- Create Events in form of assets inside your projects.
- Add nodes/descriptions for your team inside the event.
- Listen for the event anywhere you would like (Actors, Component, UMG).
- Invoke events from anywhere, literally anywhere (Animations, Macros, World Settings)
- Future update: Improved debugging for tracking events
If you are still not sure this will be the best purchase you will make, not only for your current project but also for all the future ones, please get in touch and we can offer you a demo/test version of this plugin in order to test it out and see how useful it can be.
Great Plugin. Improves event flow immensely.
I second the suggestion regarding Inputs, though.