20% off Steal the Deal With Unreal Engine Plugins For Grab
BridgeBus
Amazon EventBridge and EventBridge Scheduler for Blueprints and C++: publish game events, manage rules, targets, archives and replays, and create one-off, rate and cronβ¦
Highlights
All 13 features βBridgeBus puts your game on the AWS event bus. Publish what happens in the game - matches finished, purchases, achievements, telemetry - as EventBridge events, and let rules deliver them to Lambda functions, SQS queues, Step Functions workflows, other buses or HTTP endpoints. The game never needs to know who consumes an event.
Put Event sends one event; Put Events sends any number, split at the API limit of 10 per request, with a result for every entry. The BridgeBus Emitter component queues events from gameplay code and flushes them in batches on an interval or when a batch is full, puts throttled events back into the queue, can be paused for telemetry opt-out and reports statistics.
Live-ops tools get the full control plane: list, describe, create and delete event buses; put, enable, disable and delete rules with event patterns or schedule expressions; put, list and remove targets with input transformers, retry policies and dead-letter queues; find the rules that invoke a target; test patterns with the service. Archives record the events of a bus, and replays send a time range of them again - Wait For Replay follows a replay to the end.
EventBridge Scheduler runs your timed events: one-off at(), rate() and cron() schedules with time zones, flexible windows, start and end dates, retry policies and schedules that delete themselves after they ran. Schedule Event emits an event on a bus at a given time in one node - tournament starts, shop rotations, reminders that fire even when the player is offline.
Pure helpers build event patterns with prefix and value filters, check events against patterns locally, parse event envelopes, build and split ARNs, and build and validate schedule expressions. Struct To JSON, JSON To Struct and Get JSON Field turn event details into Blueprint structs and values.
Players get credentials from an Amazon Cognito identity pool, as guests or signed in through Set Login Token. Static keys and the default AWS credential chain are available for development, dedicated servers and tools. Requests run on background worker threads with automatic retries, and every result arrives back on the game thread.
BridgeBus is part of the Alpha XP AWS collection for Unreal Engine 4.27 and 5.8. It includes the AWS SDK for C++ prebuilt for Win64, Linux and Android and ships with styled HTML documentation.
Key features
- Put Event and Put Events (auto-split at 10 entries, per-entry results and errors)
- BridgeBus Emitter component: queued events, auto-flush interval and batch size, retry
- Event buses: list, describe, create, delete
- Rules: list, describe, put (event pattern or schedule expression), enable, disable,
- Targets: put, list, remove, list rule names by target; input transformers, retry
- Archives and replays: create, list, describe, delete archives; start, describe,
- EventBridge Scheduler: create, get, update, delete, list schedules; schedule groups;
- Make At / Rate / Cron Expression and Validate Schedule Expression
- Make Event Pattern, prefix and value filters, local Event Pattern Matches, Parse
- Struct To JSON, JSON To Struct and Get JSON Field
- Amazon Cognito identity pools, static keys and the default AWS credential chain
- 79 Blueprint nodes; background worker threads, retries with back-off, cancellable
- C++ API with a native callback
Blueprint & C++ API
Every call is reachable from more than one place β pick the entry point that fits your project:
| Class | Type | Nodes | Use it for |
|---|---|---|---|
| BridgeBusLibrary | Function library | 29 | Configuration, identity, event pattern, schedule expression and JSON helpers for BridgeBus. |
| BridgeBusEmitterComponent | Actor component | 11 | Queues game events and sends them to EventBridge in batches: automatically every Auto Flush Interval seconds, as soon as Max Batch Size events are waiting, or w⦠|
| Async action nodes | Latent Blueprint nodes | 2 | Latent node with success / failure output pins. |
Callable runs when executed Β· Pure no exec pin, returns a value Β· LatentAsync finishes later and fires its outputs
BridgeBus 2
| Node | Type | Available on | Description |
|---|---|---|---|
| Cancel | Async | Async | Stops waiting for this request: none of its output pins fire any more. The request itself may still complete on AWS. |
| Is Finished | Async | Async | True after Cancel was called or the node finished. |
Emitter 11
| Node | Type | Available on | Description |
|---|---|---|---|
| Queue Event(Detail Type: String, Detail: String, Resources: Array of String) β Boolean | Callable | Component | Queues one event. Empty Detail Type uses Default Detail Type; Detail is the JSON payload (empty = {}). Returns false when the component is paused. |
| Queue Events(Entries: Array of Bridge Bus Event Entry) β Integer | Callable | Component | Queues prepared entries (see Make Event Entry); empty fields get the component defaults. Returns how many were queued. |
| Flush() β Boolean | Callable | Component | Sends the queued events now. Returns false when nothing is queued or a flush is already running (it is retried afterwards). |
| Clear() β Integer | Callable | Component | Drops every queued event without sending it. Returns how many were dropped. |
| Get Pending Count() β Integer | Pure | Component | Events waiting to be sent (not counting a flush in flight). |
| Is Flushing() β Boolean | Pure | Component | True while a flush request is in flight. |
| Set Auto Flush(Interval Seconds: Float, Batch Size: Integer) | Callable | Component | Changes the automatic flush interval (seconds, 0 = off) and batch size at runtime. |
| Set Emitter Defaults(Source: String, Detail Type: String, Event Bus Name: String) | Callable | Component | Changes the component's default source, detail-type and event bus for events queued from now on. |
| Get Stats() β Bridge Bus Emitter Stats | Pure | Component | Totals since BeginPlay: queued, sent, failed, dropped, flushes, last flush time. |
| Set Paused(Pause: Boolean) | Callable | Component | Paused: Queue Event refuses new events and nothing is flushed automatically (for example while the player opted out of telemetry). |
| Is Paused() β Boolean | Pure | Component | True while the emitter is paused (see Set Paused). |
Config 5
| Node | Type | Available on | Description |
|---|---|---|---|
| Set Region(Region: String) | Callable | Static | Switches the AWS region used by every following request. |
| Set Credential Mode(Mode: Bridge Bus Credential Mode) | Callable | Static | Overrides the credential mode from the project settings at runtime. |
| Is Configured() β Boolean, Problem | Pure | Static | Checks the settings and returns false with a reason when requests cannot work yet. |
| Set Event Defaults(Event Bus Name: String, Source: String) | Callable | Static | Overrides the settings' Default Event Bus Name and Default Source at runtime (empty keeps the settings value). |
| Set Scheduler Defaults(Group Name: String, Role Arn: String, Timezone: String) | Callable | Static | Overrides the settings' Default Schedule Group, Default Scheduler Role Arn and Default Timezone at runtime (empty keeps the settings value). |
Identity 5
| Node | Type | Available on | Description |
|---|---|---|---|
| Set Login Token(Provider: String, Token: String) | Callable | Static | Signs the player in to the Cognito identity pool with a token from an identity provider. |
| Clear Login Tokens | Callable | Static | Forgets all login tokens and the cached identity (the player becomes a guest again). |
| Set Static Credentials(Access Key Id: String, Secret Access Key: String, Session Token: String) | Callable | Static | Uses these credentials from now on (Static Keys mode), for example temporary keys handed out by your own backend. |
| Get Identity Id() β String | Pure | Static | The Cognito identity id of this player, empty until credentials were resolved once. |
| Make User Pool Provider Name(Region: String, User Pool Id: String) β String | Pure | Static | Builds the identity-pool login key of a Cognito user pool: cognito-idp.<region>.amazonaws.com/<user pool id>. |
Events 8
| Node | Type | Available on | Description |
|---|---|---|---|
| Make Event Entry(Detail Type: String, Detail: String, Source: String, Event Bus Name: String, Resources: Array of String, β¦) β Bridge Bus Event Entry | Pure | Static | Builds one event entry for Put Events or the emitter component. |
| Make Event Pattern(Sources: Array of String, Detail Types: Array of String, Resources: Array of String, Accounts: Array of String, Regions: Array of String) β String | Pure | Static | Builds an event pattern JSON for Put Rule / Create Archive. |
| Add Pattern Prefix Filter(Event Pattern: String, Field Path: String, Prefix: String) β String | Pure | Static | Adds a prefix filter to an event pattern: the field must start with Prefix. |
| Add Pattern Value Filter(Event Pattern: String, Field Path: String, Values: Array of String, Values As Json: Boolean) β String | Pure | Static | Adds an exact-match filter to an event pattern: the field must equal one of Values (strings; "true"/"false" and numbers are written as JSON booleans / numbers wβ¦ |
| Event Pattern Matches(Event Pattern: String, Event Json: String) β Boolean | Pure | Static | Checks an event against a pattern on the client, without calling AWS. |
| Parse Event(Event Json: String) β Boolean, Event | Pure | Static | Parses an EventBridge event envelope (as delivered to SQS, Lambda or API destinations) into its fields. |
| Make Event Bus Arn(Account Id: String, Event Bus Name: String, Region: String) β String | Pure | Static | Builds the ARN of an event bus: arn:aws:events:<region>:<account>:event-bus/<name>. Empty region = the configured region. |
| Parse Arn(Arn: String) β Boolean, Partition, Service, Region | Pure | Static | Splits an ARN into its parts; returns false when the text is not an ARN. Resource is everything after the account id. |
Rules 2
| Node | Type | Available on | Description |
|---|---|---|---|
| Make Rule Target(Id: String, Arn: String, Role Arn: String, Input: String, Input Path: String, β¦) β Bridge Bus Target | Pure | Static | Builds a rule target for Put Targets. |
| Set Target Input Transformer(Target: Bridge Bus Target, Paths: Map String β String, Template: String) β Bridge Bus Target | Pure | Static | Gives a rule target an input transformer: Paths map placeholder names to JSONPaths in the event ("player" -> "$.detail.player"), Template uses them as <player>. |
Schedules 6
| Node | Type | Available on | Description |
|---|---|---|---|
| Make At Expression(Time: Date Time) β String | Pure | Static | Builds a one-off schedule expression: at(yyyy-mm-ddThh:mm:ss) for the given time (UTC unless the schedule's Timezone says otherwise). |
| Make Rate Expression(Value: Integer, Unit: Bridge Bus Rate Unit) β String | Pure | Static | Builds a rate expression such as rate(5 minutes) or rate(1 day). |
| Make Cron Expression(Minutes: String, Hours: String, Day Of Month: String, Month: String, Day Of Week: String, β¦) β String | Pure | Static | Builds a cron expression: cron(Minutes Hours DayOfMonth Month DayOfWeek Year). |
| Validate Schedule Expression(Schedule Expression: String) β Boolean, Problem | Pure | Static | Checks the syntax of an at(...), rate(...) or cron(...) expression on the client and explains what is wrong. |
| Make Schedule Target(Arn: String, Role Arn: String, Input: String, Dead Letter Arn: String, Max Retry Attempts: Integer, β¦) β Bridge Bus Schedule Target | Pure | Static | Builds a schedule target that invokes any AWS resource. |
| Make Event Bus Schedule Target(Event Bus Arn: String, Detail Type: String, Detail: String, Source: String, Role Arn: String) β Bridge Bus Schedule Target | Pure | Static | Builds a schedule target that puts an event on an event bus when the schedule fires: the scheduled game event. |
JSON 3
| Node | Type | Available on | Description |
|---|---|---|---|
| Struct To JSON(Struct: Integer) β Boolean, Json | Callable | Static | Converts any struct to a JSON object string (property names are used as keys). |
| JSON To Struct(Json: String) β Boolean, Out Struct | Callable | Static | Fills a struct from a JSON object string; fields that are missing keep their default values. |
| Get Json Field(Json: String, Path: String) β Boolean, Value | Pure | Static | Reads one value from a JSON document with a path such as "detail.player.stats[2].score". |
Events & delegates
Bind these in Blueprint (drag off the object β Bind Event) or with AddDynamic in C++.
| Event | Parameters | Fires on | When it fires |
|---|---|---|---|
| On Success | Result (Bridge Bus Put Result), Error (Bridge Bus Error) | BridgeBusPutEventAction | |
| On Failure | Result (Bridge Bus Put Result), Error (Bridge Bus Error) | BridgeBusPutEventAction | |
| On Completed | Results (Array of Bridge Bus Put Result), Failed Count (Integer) | BridgeBusPutEventsAction | |
| On Progress | Replay (Bridge Bus Replay Info), Error (Bridge Bus Error) | BridgeBusWaitReplayAction | |
| On Flushed | Results (Array of Bridge Bus Put Result), Sent Count (Integer) | BridgeBusEmitterComponent | Fires after each flush with every result and the number of accepted events. |
| On Failed | Error (Bridge Bus Error), Failed Events (Array of Bridge Bus Event Entry) | BridgeBusEmitterComponent | Fires when a flush could not deliver some events, with the first error and the events that were not accepted (and not re-queued). |
Project settings
Configure once under Project Settings βΊ Plugins βΊ BridgeBus β values are saved to the project's config .ini, so they travel with the project and your build.
| Setting | Section | Type | What it does |
|---|---|---|---|
| Region | Connection | String | AWS region of your event buses, schedules and identity pool, for example "us-east-1" or "eu-west-1". |
| Credential Mode | Credentials | Credential Mode | Where request credentials come from. |
| Identity Pool Id | Credentials | String | Cognito identity pool, for example "us-east-1:01234567-89ab-cdef-0123-456789abcdef". |
| Allow Guest Access | Credentials | Boolean | Allow unauthenticated (guest) identities before Set Login Token is called. The pool must allow guest access too. |
| Access Key Id | Credentials | String | Access key for Static Keys mode. Keys saved here end up in DefaultGame.ini - use them for development and servers only. |
| Secret Access Key | Credentials | String | Secret key for Static Keys mode. |
| Allow Static Keys In Shipping | Credentials | Boolean | Static keys are refused in Shipping builds unless this is enabled (for example on a dedicated server). |
| Endpoint Override | Connection | String | Custom endpoint, for example a local emulator such as "http://localhost:4566". Empty = the regional AWS endpoint. |
| Request Timeout Ms | Connection | Integer | Total time a request may take, in milliseconds. |
| Connect Timeout Ms | Connection | Integer | Time allowed to open the connection, in milliseconds. |
| Max Retries | Connection | Integer | Automatic retries with exponential back-off for throttled and transient failures. |
| Worker Threads | Connection | Integer | Worker threads that run requests in the background (requests never block the game thread). |
| Verify SSL | Connection | Boolean | Verify TLS certificates. Only disable for a local emulator. |
| Log Sdk Warnings | Connection | Boolean | Forward SDK warnings and errors to the Output Log (LogBridgeBus). |
| Default Event Bus Name | EventBridge | String | Event bus used when a node or event leaves Event Bus Name empty. "default" is the account's default bus. |
| Default Source | EventBridge | String | Event source used when an event leaves Source empty, for example "com.mygame". Rules match on it. |
| Default Schedule Group | Scheduler | String | Schedule group used when a scheduler node leaves Group Name empty. |
| Default Scheduler Role Arn | Scheduler | String | IAM role the scheduler assumes to invoke targets when a schedule target leaves Role Arn empty. |
| Default Timezone | Scheduler | String | IANA time zone for schedule expressions when a schedule leaves Timezone empty, for example "UTC" or "America/Los_Angeles". |
Options & enums
| Enum | Values |
|---|---|
| Credential Mode | Cognito Identity Pool Static Keys Default Credential Chain |
| Rule State | Enabled Disabled Enabled With All CloudTrail Management Events |
| Archive State | Unknown Enabled Disabled Creating Updating Create Failed Update Failed |
| Replay State | Unknown Starting Running Cancelling Completed Cancelled Failed |
| Rate Unit | Minutes Hours Days |
| Schedule State | Enabled Disabled |
| Flexible Window Mode | Off Flexible |
| Action After Completion | None Delete |
Compatibility
One ready-made build per engine version is included in the download β copy the one that matches your project.
| Platform | Supported in |
|---|---|
| Windows | Editor & packaged |
| Linux | Editor & packaged |
| Android | Packaged builds |
| Module | Type | Loading phase |
|---|---|---|
| BridgeBus | Runtime | Default |
Technical details
| Code modules | BridgeBus (Runtime), BridgeBusSdk (External, Source/ThirdParty - prebuilt AWS SDK for C++) |
|---|---|
| Blueprints | 0 Β· C++ classes: 41 |
| Network replicated | No |
| Development platforms | Windows: Yes, Mac: No, Linux: Yes |
| Target build platforms | Win64, Linux, Android |
| Third-party software | Yes - AWS SDK for C++ 1.11.916 (Apache-2.0), with the AWS Common Runtime libraries, in Source/ThirdParty/BridgeBusSdk |
| Engine versions | Unreal Engine 4.27 Β· 5.8 β a build for each is included |
| C++ classes | 41 + 24 structs |
| Blueprint nodes | 42 |
| Events | 6 |
| Documentation | Documentation.html (in the download) |
| Download | BridgeBus.zip Β· 36.9 MB |
| Version | v1.0.0 |
What's in the download
| File | What it is |
|---|---|
| BridgeBus 4.27.zip | Plugin build for Unreal Engine 4.27 |
| BridgeBus 5.8.zip | Plugin build for Unreal Engine 5.8 |
| Documentation.html | Documentation (open in a browser) |
Quick start
- Unzip the download and pick the build that matches your engine (4.27 Β· 5.8).
- Copy the BridgeBus folder into your project's Plugins/ folder (create it if needed).
- Open the project, enable BridgeBus under Edit βΊ Plugins and restart the editor.
- Fill in Project Settings βΊ Plugins βΊ BridgeBus.
- Right-click in any Blueprint graph and search BridgeBus β or include the public headers from C++.
- Package for your target platform (Windows, Linux, Android).
Good to know
Built for Unreal Engine 4.27 and 5.8. Requires an AWS account; EventBridge, EventBridge Scheduler and Cognito usage is billed by AWS. Bus, rule, target, archive, replay and schedule-group management nodes need admin IAM permissions and are meant for live-ops tools and servers; game clients usually only need events:PutEvents. On Linux and Android the SDK uses the engine's libcurl and OpenSSL and the engine's certificate store. On Win64 the SDK is one DLL with a plugin-specific name, so BridgeBus can be installed next to other AWS-based plugins. Never ship long-term access keys in a game client: use a Cognito identity pool for players. Developed and maintained by Alpha XP.
Everything included
- Put Event and Put Events (auto-split at 10 entries, per-entry results and errors)
- BridgeBus Emitter component: queued events, auto-flush interval and batch size, retryβ¦
- Event buses: list, describe, create, delete
- Rules: list, describe, put (event pattern or schedule expression), enable, disable,β¦
- Targets: put, list, remove, list rule names by target; input transformers, retryβ¦
- Archives and replays: create, list, describe, delete archives; start, describe,β¦
- EventBridge Scheduler: create, get, update, delete, list schedules; schedule groups;β¦
- Make At / Rate / Cron Expression and Validate Schedule Expression
- Make Event Pattern, prefix and value filters, local Event Pattern Matches, Parseβ¦
- Struct To JSON, JSON To Struct and Get JSON Field
- Amazon Cognito identity pools, static keys and the default AWS credential chain
- 79 Blueprint nodes; background worker threads, retries with back-off, cancellableβ¦
- C++ API with a native callback
Platforms
Requirements
- Unreal Engine 4.27 and 5.8
- Develop on Windows (Win64)
- Blueprints and C++
In the download
Personal
One non-commercial project
- 1 activation seat
- 1 year of updates
- One end product
- Non-commercial use
- Community support
- 14-day refund window
Commercial
Ship paid products
- 5 activation seats
- 1 year of updates
- One paid end product
- Unlimited end users
- Priority support
- Source files
- 14-day refund window
Extended
Resell & white-label
- Unlimited activation seats
- Lifetime updates
- Unlimited end products
- White-label & resell
- 1-hour SLA
- Seat-free team use
- 14-day refund window
One purchase per product, no subscription. Each licence comes with a signed key β 1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended. Paid licences can be refunded within 14 days from your order page.
- v1.0.0Latest
- Unreal Engine 4.27 and 5.8
- Blueprint and C++ API, HTML documentation
Be the first to review BridgeBus β reviews come from customers who bought it, so every one is a verified purchase.
Frequently asked
How do I get the files after paying?
Straight after checkout you land on your order page with the download button and your licence key. A receipt is emailed to you, and every order stays in My library.
Which licence do I need?
Personal β One non-commercial project. Commercial β Ship paid products. Extended β Resell & white-label. The Licences tab compares them side by side.
On how many devices can I activate it?
1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended.
How long do I get updates?
Personal: 1 year of updates, Commercial: 1 year of updates, Extended: lifetime updates, counted from your purchase.
Can I get a refund?
Yes β paid licences can be refunded within 14 days, straight from your order page.
Is the download safe?
The file was scanned with ClamAV when it was published. Its SHA-256 checksum is listed under Features β In the download, so you can verify the file you receive.
Do I need an account?
No. Checkout only needs your email. Signing in keeps all your purchases, keys and downloads together in My library.
More like this
AudioLens
Real-time audio analysis: FFT spectrum, onset and beat detection, and a full set of time- and frequency-domain descriptors..
β β β β β No reviews yetTTechHarbour$14.00BlueprintTCP
BlueprintTCP lets you connect to any TCP server and exchange data entirely from Blueprints β no C++ and no networking boilerplate.
β β β β β No reviews yetTTechHarbour$12.99BluetoothLink
Bluetooth Low Energy for Unreal - scan, connect, read, write and subscribe to BLE devices on Android and iOS.
β β β β β No reviews yetTTechHarbour$11.99ClusterLink
SocketCluster realtime client for Unreal - pub/sub channels, auth engine and JSON codec, usable from Blueprints.
β β β β β No reviews yetTTechHarbour$11.99