> For the complete documentation index, see [llms.txt](https://docs.otherside.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.otherside.xyz/platform-documentation/creation/unreal-development/features-and-tutorials/trusted-clients.md).

# Trusted Clients

Trusted Clients are machines that be launched alongside your world, that can offload work from your server, to help enable larger scales. (They are clients, but are managed internally, and so "trusted" to do the work of the server, as opposed to player clients)

There are two types of trusted client:

* [#worker-clients](#worker-clients "mention") - used to run offloaded compute. Can be used for expensive gameplay systems, e.g. managing NPCs.
* [#sentinel-clients](#sentinel-clients "mention") - used to run offloaded validation. Instead of the server needing to check everything the players do, the sentinels can take that responsibility

{% hint style="info" %}
NOTE: Worker clients are similar, but distinct from [Bots](/platform-documentation/creation/unreal-development/features-and-tutorials/bots.md). If you want fake players that are representative of human players in terms of networking load, you should use bots.
{% endhint %}

## How to set up trusted clients

### How to use trusted clients in-editor

If you want to use Trusted Clients in-editor, you will need to do the following:

* First, you will need to configure a `Trusted Client Api Key`.

  * This is set in your `Editor Preferences -> Sign In Settings`

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

  * The value for your trusted client API key is in your dashboard (admin -> API Keys), if your project has one. If not, you will be unable to use trusted clients.
* Then, when playing in editor, you can set one of the clients to run as a Worker or Sentinel Client through `Editor Preferenecs -> Morpheus -> Editor Client Connection Types`
  * Each entry in the list dictates which connection type will be used for the client of that index. Each will default to `Player` (meaning a human controlled character), but you can set one to be `Worker`, to use a Worker Client in-editor, or `Sentinel` to use sentinels.

    <figure><img src="/files/9GFLCPLejzmbdBKsWiBZ" alt=""><figcaption></figcaption></figure>
* Then, when playing in editor, increase the `Number of Players`, to include the connections you added above.

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

### How to add trusted clients to your world

Much like [Bots](/platform-documentation/creation/unreal-development/features-and-tutorials/bots.md), you can configure the number of trusted clients your world starts with via the launch config in the dashboard.

<figure><img src="/files/3Rfr8oeTkDj5zPwIKQRA" alt=""><figcaption></figcaption></figure>

You can also add trusted clients directly to a launched world by navigating to the "Operations" tab on your project Dashboard.

<figure><img src="/files/75Vqgj1k7YEXstSvKwzn" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
NOTE: Currently the only type of supported trusted clients are [#worker-clients](#worker-clients "mention").
{% endhint %}

## Worker Clients

Worker clients are generic trusted clients that can be used to run offloaded gameplay logic. In Unreal, their "connection" type will extend `M_WorkerConnection`.

You can tell if your local connection is a worker connection by using `GetLocalClientConnection` from a Morpheus Actor, and casting to `M_WorkerConnection`.

If you want to spawn Morpheus Actors that the worker client has authority over, you will need to send call `SpawnMorpheusActorWithSplitAuthority` from the server, with the worker's `ClientConnection`.

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

## Sentinel Clients

{% hint style="info" %}
Sentinel clients are not publicly available yet.
{% endhint %}


---

# 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://docs.otherside.xyz/platform-documentation/creation/unreal-development/features-and-tutorials/trusted-clients.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.
