> For the complete documentation index, see [llms.txt](https://asperazera.gitbook.io/simple-event-system/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://asperazera.gitbook.io/simple-event-system/quickstart/receive-event.md).

# Receive Event

To react to an event (like opening a door, updating UI, or playing a sound), you need to **Subscribe** (Bind) to the Simple Event System.

> 📍 **Where to put this?**\
> The best place to bind events is usually inside **Event BeginPlay** (for Actors) or **Event OnInitialized** (for Widgets).

***

### Step 1: Get the System

First, we need to get a reference to the system component.

1. Right-click on your graph.
2. Search for **Get Simple Event System**.
3. Place node on the graph.

<div align="left"><figure><img src="/files/HclRgXrGwVRKfN5gCbF1" alt=""><figcaption></figcaption></figure></div>

***

### Step 2: Assign the Dispatcher

Now, we bind a custom event to the system's dispatcher.

1. Drag off the blue return pin from Get Simple Event System.
2. Search for **"Assign Event System Dispatcher"**.
3. This will create two nodes:
   * `Bind Event to Event System Dispatcher` (The subscription).
   * `Custom Event` (Where your logic goes).

{% hint style="info" %}
**Tip:** You can use `Create Event` node to bind separate **Function** instead of `Custom Event`.
{% endhint %}

<div align="left"><figure><img src="/files/lW9L0AV5RNWO12gY6G0c" alt=""><figcaption></figcaption></figure></div>

***

### Step 3: Set the Tag Switch

By default, you will hear **every single event** in the game. You probably don't want that.

1. Locate the **Event Tag** input on the `Bind Event` node.
2. Get the `Switch on Gameplay Tag` node.

<figure><img src="/files/2Lk5XX7DJLWrnNYbKl1X" alt=""><figcaption></figcaption></figure>

In the Details panel of Switch node select the specific **Gameplay Tag** you want to listen for (e.g., `TriggerOverlap.Start`).

<div align="left"><figure><img src="/files/nXh0ARn9gFkqryHBdu3i" alt=""><figcaption></figcaption></figure></div>

***

### Step 4: Handle the Logic

Now, connect your `Bind Event` node to `BeginPlay`.\
Then, add your game logic to the `Custom Event` node.

**Example:**

* **Event:** TriggerOverlap.Start
* **Logic:** Print String "Hello World".

<figure><img src="/files/R4MZjSDA9zz6dSPl4mlQ" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://asperazera.gitbook.io/simple-event-system/quickstart/receive-event.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
