Blog
April 15, 2026
How to Use UnrealGameSync with Perforce P4 (Helix Core)
Digital Creation & Collaboration,
Version Control
In Summary:
- UnrealGameSync is a tool that developers, designers, and artists use to ensure they’re working from the same set of files and versions of code and content for an Unreal Engine project.
- The benefits of UnrealGameSync include synching a changelist as soon as it’s submitted, adding comments to each change, flagging builds as good or bad, and safely making changes from local builds without submitting unversioned assets.
- To use UnrealGameSync with Perforce P4, you must build it first, upload UnrealGameSync files to a P4 depot, open the UnrealGameSync project and run the app, then sync changes. You can also integrate it with Horde.
When you’re building a game in Unreal Engine 5 with a distributed team, one of the biggest challenges is keeping everyone in sync—literally. Large projects with custom engines, multiple branches, and hundreds of assets can quickly become a disaster for artists and developers who just want to focus on creating.
That’s where Unreal Game Sync (UGS) comes in.
UGS is a tool developed by Epic Games to keep code and content tightly synchronized for collaborative development of Unreal Engine projects in a Perforce P4 version control environment. Whether team members are in the same location or distributed over time and geographies, UGS keeps local workspace files and versions aligned with the project.
Epic Games itself uses UGS for development on internal projects, such as Fortnite.
In this blog, I cover what UnrealGameSync is, its benefits, how to install and set it up within a P4 environment, and how to use it with Horde.
What Is UnrealGameSync?
UnrealGameSync (UGS) is a tool developed by Epic Games that integrates with Perforce P4 to streamline collaboration in Unreal Engine projects. UGS enables artists and developers to sync their workspaces with the latest changes from an Unreal project stream, ensuring that distributed teams can efficiently work together on shared assets and code as the project is updated.
It allows teams to:
Access precompiled binaries instantly. Instead of requiring every artist or designer to build the engine locally, UGS pulls down precompiled binaries from P4. This means no more waiting hours for builds or installing Visual Studio just to open the editor.
Switch branches effortlessly. UGS makes it simple to move between development and release branches without breaking your setup. For studios managing multiple versions of a game—or even multiple projects—this is a lifesaver.
See build status at a glance. With integrations for CI tools like TeamCity and issue trackers like Jira, UGS provides visibility into which builds passed or failed, so teams can make informed decisions quickly.
What Is UnrealGameSync Used For?
UnrealGameSync promotes code and content integration in a collaborative development environment by enabling developers and creatives to work on the same Unreal Engine project as it is updated.
“When they're using this tool, an Artist's workflow typically involves UGS syncing their project files, resolving merge conflicts, syncing editor binaries, updating version files, and optionally running their Unreal project. For Programmers, their workflow typically involves UGS syncing their project files, resolving merge conflicts, updating version files, generating project files, optionally building UE4, and optionally running their Unreal project.”
Once UGS Unreal is installed, you can easily bootstrap and iterate on Unreal Engine projects without the overhead that typically comes with using sync tools.
By using UnrealGameSync, you can:
- Sync project files.
- Resolve merge conflicts.
- Sync editor binaries.
- Sync editor source files
- Generate project files.
- See the status of each changelist at a glance
Integrate with Horde’s CI functionality.
Accelerate Game Development with Perforce P4 + Unreal Engine 5
To set up and configure P4 and Unreal Engine 5, watch this in-depth tutorial.
Back to top
How Do Game Development Teams Use UnrealGameSync?
VOID Interactive, the studio behind the hit tactical shooter Ready or Not, uses UGS to streamline their change iteration and build process across multiple branches:
“As a content creator, you don't have to download source code, you don't have to install Visual Studio, you don't have to compile the entire engine. We can ship you a custom engine and the build only takes about 5 to 10 minutes for that. It's very quick.”
- Stephen Post, former Technical Director, VOID Interactive
UnrealGameSync in “Ready or Not"
Discover how VOID Interactive leveraged UnrealGameSync to transform their workflows for the hit tactical shooter game, Ready or Not by watching the In Development podcast:
What Are The Benefits of Using UnrealGameSync?
There are several benefits of using UGS Unreal, which include:
- Instant syncs: Sync to a changelist as soon as it’s submitted for faster updates.
- Change tracking: Add comments to each change and flag builds as good or bad.
- Real-time notifications: Get alerts on fixes for broken builds as they happen.
- Safe content changes: Make updates from local builds without submitting unversioned assets.
- Compressed Unreal Editor access: Use a compressed Unreal Editor build even without Visual Studio.
- One engine build: Avoid the need for individual users to compile and build the engine.
- Quick onboarding: New team members can start creating right away—no complex setup required.
- Reduced build failures: Precompiled binaries reduce build failures and keep branches aligned.
- Boosted productivity: Developers and artists spend more time creating, less time troubleshooting.
- Scalable workflows: Ideal for studios managing multiple projects or platforms.
How to Install and Setup UnrealGameSync
Here is how to setup and install UGS Unreal. The prerequisites are:
- A UE5 depot that contains your Unreal Engine source code.
- A project depot for your custom UE build that is mapped to the source code depot stream (referred to as UGSTestProject for this tutorial).
- A Perforce P4 server and client installed.
- The latest .NET framework and Windows SDK.
1. Create the UnrealGameSync depot
Follow these steps to create a depot and stream that contains the UnrealGameSync tool.
Using P4ADMIN, create a depot called UnrealGameSync. Choose stream as the Depot type.
Using P4V, select the UnrealGameSync depot and create a stream called Main. Choose mainline as the Stream type.
Create an empty folder for your new workspace.
Create a workspace using the local location of the UnrealGameSync files and choose the stream //UnrealGameSync/Main.
Switch to this new workspace.
2. Build UnrealGameSync
Follow these steps to build the UnrealGameSync tool.
In your UGSTestProject workspace folder, navigate to \Engine\Source\Programs\UnrealGameSync and run UnrealGameSync.sln using Visual Studio. Make sure to switch the solution to Release in the top menu of Visual Studio.
In Solution Explorer, locate and open the DeploymentSettings.cs file, and set DefaultDepotPath ="//UnrealGameSync/UnrealGameSync".
In Solution Explorer, click Build Solution to build UnrealGameSync. Wait until UnrealGameSync is successfully built.
In your UGSTestProject workspace folder, navigate to \Engine\Source\Programs\UnrealGameSync\Installer and run Setup.bat as administrator to create an UnrealGameSync.msi file. This file will be located at \Engine\Source\Programs\UnrealGameSync\Installer\bin\Release in your UGSTestProject workspace folder.
3. Upload UnrealGameSync files to the depot
The following steps upload all the UnrealGameSync files to the newly created UnrealGameSync depot.
Go to the \Engine\Source\Programs\UnrealGameSync\Installer\bin\ folder in your UGSTestProject workspace folder and copy the Release folder and UnrealGameSync.msi to your empty workspace folder, UnrealGameSync.
Add the UnrealGameSync files to a changelist by selecting your root folder in the workspace and clicking the Add button on the top of P4V.
Add the files to the new pending changelist and enter a changelist description.
Click OK to add the changelist.
Now you can submit the changes from your changelist. Select All files and click Submit. Wait for the engine files to finish loading and make sure that all files are uploaded.
4. Open the Project in UnrealGameSync
Before opening the project, make sure that you and any other required users have access to the UnrealGameSync depot.
To start the installation process, locate and double-click the //UnrealGameSync/UnrealGameSync/UnrealGameSync.msi file. This process might take a while, and you should allow the installer to make changes to your computer, if prompted.
After installation, the UGS app should start automatically. If it doesn’t, locate the app on the desktop or start menu and open it.
If necessary, enter the Server address, User, and Depot Path. In this example, the Depot Path is //UnrealGameSync/UnrealGameSync/bin.
Click Connect and the app should launch without errors.
If the project wasn't added before, click Open Project, select Workspace, click Browse, and choose the existing workspace with a project.
Click the Browse button next to the Streams field, and select stream: //UGSTest Project/Main.
Click OK to close the workspace settings window.
Click the Browse button next to Path field, and select Unreal Engine project: ...UGSTestProject/Main/UE5/UGSTestProject/UGSTest.uproject.
Click OK to save your project settings.
Now you’re ready to open the project.
Open the installed UnrealGameSync tool and select Workspace with your project. When the Select Workspace menu opens, it will display a list of Workspaces that you can choose from.
Select a workspace and click OK.
Click the Browse button next to the Path: field to open the Select Project menu.
In this menu, expand the Workspace tree, select the .uproject file, and click OK.
To use precompiled binaries through UGS:
Deselect the Build button at the top of the panel.
Under Options, click Sync Precompiled Binaries and Sync Filters.
Select Sync all projects and Include all synced projects, and deselect the categories you don’t want depending on your project.Right-click the necessary engine version and select Sync. Wait for the project to sync and Unreal Editor will launch automatically after the download.
Later, if you wish to launch the editor again, you can double click the line in UGS.
5. Sync With the Latest Changes
There are two ways to sync with the latest changes in UGS: from the Changelist Area and the Project Overview Area.
Syncing From the Changelist Area
Open your project in UGS and locate the Changelist Area in the main menu.
Find the changelist you’re using, indicated by an arrow icon, and double-click it to start the sync. To update to another changelist from the project stream, double click it in the Changelist Area.
Once the sync finishes, UGS updates the Output Log in the Changelist Area, and the Project Overview Area.
Syncing From the Project Overview Area
Locate the Project Overview Area in the main menu and click the down arrow next to the Sync Now – To button.
In the menu that opens, select Latest Change.
At the end of the sync, UGS notifies you of a successful update to the latest Change.
Back to topHow to Use UGS With Horde
To install and configure UGS from Horde, follow the Horde UnrealGameSync Tutorial at Epic Games.
How to Troubleshoot UGS
For additional documentation and troubleshooting tips, see the following documentation at Epic Games:
Get Started With UnrealGameSync and Perforce P4
“Unreal Game Sync took us from three guys in a basement to being able to scale without bounds. Artists don’t need to worry about builds—they just pull down the latest binaries and get to work.”
- Stephen Post, former Technical Director, VOID Interactive
To use UnrealGameSync, you will first need Perforce P4—the version control solution trusted by over 90% of the 2025 Game Awards Winners—making it easy for you to collaborate and ship faster.
Teams of up to five users and 20 workspaces can get started with P4 Free at no cost. Experience the benefits of seamless version control and collaborative development today.