Repo of the Day
CodingQuarters/Netcode-EOS-Minimal-Template-Scene
Published: Nov 4, 2026
Open repository ↗Get your multiplayer game working better and faster with EOS + Netcode!
Summary
CodingQuarters/Netcode-EOS-Minimal-Template-Scene is a minimal Unity scene for connecting Epic Online Services (EOS) peer-to-peer lobbies to Netcode for GameObjects. It supplies the basic lobby, sign-in, and Netcode-start flow, while leaving gameplay synchronization and scene transitions to the developer.
What it is useful for
Use this template when a Unity project needs a small bridge to EOS matchmaking and Netcode for GameObjects, particularly for a peer-to-peer setup that does not require a per-player multiplayer server. The imported scene includes the minimum UI and setup, with the main logic split between P2PManager.cs for EOS and UIManager.cs for the interface. It is a scene package rather than a complete Unity project, so the third-party packages must be installed separately.
A concrete flow is: sign in with a device ID, create a lobby on one device, share its code, join it on another, and confirm both clients are connected to Netcode. This is useful for establishing a multiplayer foundation before adding player spawning, roles, or game-specific behavior.
The boundary is important. The host’s PLAY action sends an RPC, but currently only the host loads the next scene. A developer must add a client-side handler for the OnGlobalActionTriggered event to load scenes, spawn objects, and assign roles. A prefab also cannot be placed in the Netcode slot for automatic spawning; the README says it must be spawned after startup.
Documented limitations include PC-only testing, unhandled cases such as disconnects and players leaving, and two instances on one computer not being possible with device-ID sign-in. It has been tested only with EOS Plugin for Unity 6.1.2, Netcode for GameObjects 2.13.2, and Unity 6.3 LTS (6000.3.7f1). The README also warns that the template may contain bugs.
How engineers can use it
-
In Unity Package Manager, install Netcode for GameObjects and the PlayEveryWare EOS plugin. The README documents adding this Git URL for EOS:
https://github.com/EOS-Contrib/eos_plugin_for_unity_upm.git -
In the Epic Games Developer Portal, create a developer account and product. Add a Peer 2 Peer client policy, a client using that policy with an empty IP allowlist, and an application linked to that client; save the permissions and linked-client changes.
-
Open Unity’s EOS configuration window and enter the product name and ID, version, client, client secret, sandbox, and deployment values. Then import the template’s
.unitypackagethrough Unity Package Manager and open its scene. The README is inconsistent about the filename: its import section saysNetcode-EOS-Minimal-Template2.unitypackage, while an earlier section saysNetcode-EOS-Minimal-Template.unitypackage, so check the download and current README before importing. -
Test on two separate devices, one of which can be the Unity Editor. Wait for sign-in, create and share the lobby code, join from the second instance, verify the Netcode connection, and press PLAY.
If P2PSocketName is inaccessible in P2PManager.cs, the documented workaround is to change private string P2PSocketName to public in the plugin’s EOSTransport.cs. If EOS initialization fails, recheck the configuration fields.