> For the complete documentation index, see [llms.txt](https://unlycky-roll-studio.gitbook.io/unlucky-roll-studio-or-plugin-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unlycky-roll-studio.gitbook.io/unlucky-roll-studio-or-plugin-documentation/advanced-debug-menu-documentation/features/advanced-debug-menu-subsystem/registerdebugfunction.md).

# RegisterDebugFunction

Register Debug Function

## Inputs

* **Target Object (Object):** Object containing the Getter and optional Setter functions.
* **Getter Function (Name):** Function used to retrieve the value.
* **Mode (Debug Menu Entry Mode):** **Setter** or **Viewer**.
* **Options (Debug Menu Entry Options):** Display and editing settings.
* **Setter Function (Name):** Required when using **Setter** mode.

## Outputs

* **Return Value (Advanced Debug Menu Binding):** Reference to the registered entry, or **None** if registration fails.

## Description

Registers a value using your own **Blueprint Getter and Setter functions**. This is useful for calculated values and variables that must be changed through custom gameplay logic.

**Function Requirements:**

* **Getter:** No inputs and exactly **one return value**.
* **Setter:** Exactly **one input** matching the Getter's return type, with no outputs.
* Functions must be ordinary Blueprint-callable instance functions on the target object.

If you only need to display a value, choose **Viewer** and leave **Setter Function** empty.

{% hint style="info" %}
Getter functions may be called repeatedly while the menu is visible. Avoid expensive operations or unintended gameplay changes inside them.
{% endhint %}
