Editor: Multi-User Sessions
Description
This guide explains the process of setting up multi-user sessions and collaborations using a remote connection. With this setup, multiple users can connect to a shared session and collaborate on developing a level. However, there are certain limitations to keep in mind. For instance, simultaneous editing of the same blueprint is not supported. These limitations are detailed at the end of the documentation.
Warning
The host will need to port forward their router to enable this feature which won’t be covered in this guide.
This guide draws inspiration from Unreal's comprehensive guide, which provides more detailed instructions.
Unreal Engine Multi-User Guide
Enable Multi-User Editing Plugin
For this feature to be used, it must be done so by enabling the Multi-User Editing plugin in Unreal Editor. It is found under Edit > Plugins
on the menu.
Customise Display Name and Colour
Users can set up their display name and personal avatar colour in Edit > Project Settings
and within this window Plugins > Multi-User Editing
.
Configuring a Multi-User Session (Host)
Note
Users joining a session (client) can skip this step. This step is only required for the host computer. There can only be one host device running the session.
Head to the Multi-User Editing tab in the Project Settings and set the server port to an open port such as 25565
. Ensure that the specified port is not used elsewhere.
Configuring a Multi-User Session (Client)
Note
Users joining a session (client) can skip this step. This step is only required for the host computer. There can only be one host device running the session.
Head to the UDP Messaging tab in Project Settings. Ensure the Unicast Endpoint
is set to ****0.0.0.0:0. The Static Endpoint
should be a static endpoint set to the IP address of the machine that will be hosting the Multi-User Server, followed by the port set by the host in the previous step. For example 123.456.7.8:7000. The IP address is the public IP address if hosted on a personal PC.
Static Endpoints can be found under Transport
> Advanced
.
Hosting a Multi-User Server
Note
This step is only required to be completed by the host device. Client devices can skip this step.
Open up the Multi-User Browser found in Window > Multi-User Browser
and launch a server once the windows open.
Create a session by giving the session a name and clicking the green tick to confirm. This session name should be unique to the device you are using. As the host, the device will automatically be connected to the session that was created.
Joining a Multi-User Server
For clients, open up the Multi-User Browser found in Window > Developer Tools > Multi-User Browser
. You'll see an active session in the list if you’ve set it up correctly and the host has launched one. Double-click to join the session.
Saving Changes
Changes within the session won’t persist until you manually check them. Head to Revision Control > Persist Session Changes
to do so.
Select the files you wish to persist and click submit. This will then make the changes made in the session to be saved into the project when you leave. You can also select Submit to Revision Control
if you have it set up. If you have the Submit to Revision Control selected, you will need to use your revision control method to push it to the remote.
Limitations
- Users cannot edit the same blueprint at the same time. This includes level blueprints.
- The sessions will stutter now and then due to syncing files across the server.
- Sessions will load slower as files get added and created within a session. These files are not committed to a source control until you do so. Using a source control will reduce downloading the files each time you join.