Open world Template https://github.com/make-live/multiplayer.git
Pixel Streaming Infrastructure https://github.com/EpicGames/PixelStreamingInfrastructure.git
-
Start the Matchmaker Server:
- Run
RunMatchmakerServer.batto initialize the matchmaker server.
(located inPixelStreamingInfrastructure-UE5.2/PixelStreamingInfrastructure-UE5.2)
- Run
-
Launch the Servers:
- Execute
RunServer - Port 88.batandRunServer - Port 89.batto start the servers on ports 88 and 89 respectively.
(located inPixelStreamingInfrastructure-UE5.2/PixelStreamingInfrastructure-UE5.2)
- Execute
-
Open UE project:
- Navigate to the
Projectfolder in the project directory. - Open
MakeLiveMultiplayer.uproject.
- Navigate to the
-
Run as Standalone
-
Accessing the Application:
- Open a web browser.
- For local testing, enter
127.0.0.1:88in one tab and127.0.0.1:89in another tab. - For external access, replace
127.0.0.1with your PC's IP address (e.g.,192.168.x.x:88and192.168.x.x:89).
If you make changes to the project and want to export it again, follow these steps:
-
Package the project and create shortcut of the executable two times and rename it
MakeLiveMultiplayer.exe - 1andMakeLiveMultiplayer.exe β 2. -
Right-click on each executable, select 'Properties', and append the following in the target tab:
For
MakeLiveMultiplayer.exe - 1:-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8888For
MakeLiveMultiplayer.exe - 2:-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8891
Currently, the project is working in Standalone Game in UE 5.3.
We are using the Auto Setup Plugin from Reallusion in order to import properly the CC4 Avatars.
For each computer:
- Download the Auto Setup for Unreal Engine here: https://www.reallusion.com/auto-setup/unreal-engine/download.html
- Run the executable. It installs the Auto Setup folder in
C:\Program Files\Reallusion\SharedPlugins by default. - Inside
Setup\Unreal\Auto Setup 1.33 For Unreal 5.3folder, copy Content and Plugin folders. - Paste the folders into the project.
The first time you pull the repository setup the multiplayer submodule with the following commands:
- Go to root of project
- Run git submodule sync
- Run git submodule update --init --recursive
The DevAuthTool allows for faster development when using the EOS networking.
It allows skipping the authentication step everytime you run the application by authenticating only once during the setup of the DevAuthTool.
Donload and Run DevAuthTool:
- Login to https://dev.epicgames.com/portal/en-US/
- Select Organisation
- In the Dashboard click the SDK & Release Notes button
- For sdk type select C# SDK and for version the latest
- Download & Unzip
- In the unzipped folder go to SDK/Tools/ and unzip EOS_DevAuthTool-win32-x64-1.2.1.zip
- Run EOS_DevAuthTool.exe in the unzipped folder
Setup Accounts:
- Run EOS_DevAuthTool.exe
- Select a port (i.e 9305)
- Login to an Epic Account ( go through the login process )
- Enter a name, it will be used in the command line to avoid going throug the login process
- Setup as many accounts as you want, each with a different name
Add command line arguments to the builds/standalone to avoid going through the Epic login: // For build:
- Create shortcut of the executeable
- Open the shortcut properties.
- Add the following command line arguments: -AUTH_TYPE="developer" -AUTH_LOGIN="localhost:" -AUTH_PASSWORD=""
For standalone:
- Open Editor Preferences -> Level Editor - Play -> Play in Standalone Game
- Set Additional Launch Params to: -AUTH_TYPE="developer" -AUTH_LOGIN="localhost:" -AUTH_PASSWORD=""
After these steps, whenever you play the game for development the login will be automatic, no need to go through the Epic Login process everytime.
Create a new Animation Blueprint (e.g., NewNeuronAnimBP).
β The most important part is caching the pose β exact setup can vary depending on your pipeline.
In the Event Graph:
- Create a variable named
SavedPoseof type Pose Snapshot. - Compile the Blueprint.
- Select
SavedPoseβ In the Details panel:- Set
Default Value β SavedPose β Snapshot Name = NetPose
- Set
Create another Animation Blueprint (e.g., NewNeuronClientAnimBP).
- Add a Pose Snapshot node.
- In the Details panel:
- Set
Snapshot Name = NetPose
- Set
- Select the
PoseSnapshotvariable. - In the Details panel:
- Set
Default Value β Snapshot Name = SavedPose
- Set
For SkeletalMesh_Server:
- Animation BP β
NewNeuronAnimBP - Skeletal Mesh β Your custom avatar
For SkeletalMesh_Client:
- Animation BP β
NewNeuronClientAnimBP - Skeletal Mesh β Your custom avatar
- Remove any
Cast To NeuronAnimBlueprint. - Replace it with
Cast To NewNeuronAnimBP.
- Click Save, Compile, Save

