# World Travel

{% hint style="success" %}
verified: 2025-11-20 version: v39
{% endhint %}

<figure><img src="/files/wblMf6NlMDLVMqdVHqa1" alt=""><figcaption><p>The World Travel example as seen in ExampleMap</p></figcaption></figure>

{% hint style="danger" %}
World travel is only available between worlds on the same Base M2 Platform version.

World Travel will not work for users who only have guest access as they only have access to a single world.
{% endhint %}

### Overview <a href="#worldtravel-overview" id="worldtravel-overview"></a>

**World Travel** is the mechanism by which clients (i.e. players or bots) move between mods. The typical use case for world travel is when we want to have two separate maps which persist at the same time and where players can connect to either map and travel between them.

### How Does It Work? <a href="#worldtravel-howdoesitwork" id="worldtravel-howdoesitwork"></a>

Without going into too much technical depth, there are two modes of world travel - manual and automatic. Automatic world travel is usually triggered programmatically as part of client setup, whereas manual involves the user running into or interacting with an object which causes them to world travel.

Since automatic world travel is manual minus some steps, the below is a high-level example of **manual** world travel:

* **Step 1**: We set up two or more servers.
* **Step 2:** We start a client, and they connect to Server A.
* **Step 3:** The client interacts with an object, and an Http request is sent which returns the available worlds.
* **Step 4:** The client selects a world to travel to, disconnects from Server A and connects to Server B.

### Basic functionality <a href="#worldtravel-basicfunctionality" id="worldtravel-basicfunctionality"></a>

You can place a `BP_M2Example_WorldTravelGate` in your world (or something deriving from the underlying BP class). In-game, the UI will be populated with an option for each UE server that you have permissions to travel to.

### Testing in editor <a href="#worldtravel-testingineditor" id="worldtravel-testingineditor"></a>

* Our recommended flow for testing world travel in editor is detailed here: [World Travel in the Editor](/creation/unreal-development/features-and-tutorials/world-travel/world-travel-in-the-editor.md)


---

# Agent Instructions: 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.msquared.io/creation/unreal-development/features-and-tutorials/world-travel.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.
