Search Results for

    Show / Hide Table of Contents

    Getting Started

    Multiplayer Engine for Steam, abbreviated as MPE4S throughout this documentation, can be purchased from the Unity Asset Store. As an Extension Asset of the Standard Unity Asset Store EULA License, one license is required per user.

    Currently, MPE4S requires Unity 6.0 or 6.2. We aim to support the latest LTS and supported Unity releases. As Steam only supports Windows, Mac, and Linux, MPE4S only works on these platforms. While MPE4S won't function on other platforms, it has been designed to not throw errors on these platforms, meaning you can safely keep MPE4S in your project for cross-platform games.

    Before downloading MPE4S, it is recommended you install Git as many integrations need Git for an easy installation. If you choose not to install Git, you can still use MPE4S but will need to manually install tools such as Steamworks.NET. For more, see the Unity documentation on Git packages.

    From the asset store page, click "Open in Unity". If already in Unity, open the package manager window, click on "My Assets" and search for "MPE4S". Click the "Import" button. If the "Import" button does not appear, first click the "Download" button and once finished you can import MPE4S.

    When the importing window pops up, you can keep everything, as MPE4S will intelligently enable or disable code based on what integrations you have in your project. However, if you are planning on using a particular networking library integration, you are free to unselect the other integrations during the import.

    If Steamworks.NET, the core dependency of MPE4S, is already installed, you are ready to move on to the next steps! Otherwise, the setup wizard will open to guide you through the rest of the setup.

    Setup Wizard

    The setup wizard will allow you to easily install dependencies and networking library integrations. At a minimum, Steamworks.NET must be installed, and it is recommended to install either Multiplayer Play Mode or ParrelSync to simulate local multiplayer.

    Additionally, you can click to install your choice of networking library. If doing so, you will be prompted to remove the integrations of other networking libraries to ensure no redundant components remain in your project.

    You can open the wizard at any time by going to Windows > Kaiju Solutions > Multiplayer Engine for Steam > Wizard or Tools > Kaiju Solutions > Multiplayer Engine for Steam > Windows > Wizard from the top menu.

    Dependencies and Integrations

    You can manage dependencies and integrations outside of the setup wizard by going to Tools > Kaiju Solutions > Multiplayer Engine for Steam > Dependencies from the top menu. Additionally, you can remove all unused integrations by going to Tools > Kaiju Solutions > Multiplayer Engine for Steam > Remove Unused Integrations.

    Preprocessor Directives

    MPE4S uses preprocessor directives to enable and disable functionality based on what dependencies and integrations are installed. These are automatically added when installing a given dependency. Additionally, if you uninstall the dependency from the top menu with Tools > Kaiju Solutions > Multiplayer Engine for Steam > Dependencies > Uninstall, the directives will be automatically removed. However, if you remove any dependencies manually, such as through the package manager, the preprocessor directives will not be removed automatically, which will cause compilation errors. If this happens, you will need to manually remove the preprocessor directives associated with the dependency or integration you removed by going to Edit > Project Settings from the top menu, selecting Player, and scrolling down to Scripting Define Symbols. Below are the preprocessor directives which MPE4S uses:

    • STEAMWORKS_NET - For when Steamworks.NET is installed.
    • MULTIPLAYER_PLAY_MODE - For when Multiplayer Play Mode is installed.
    • PARREL_SYNC - For when ParrelSync is installed.
    • NETCODE_FOR_GAMEOBJECTS - For when Netcode for GameObjects is installed.
    • FISHNET - For when FishNet is installed.
    • PURRNET - For when PurrNet is installed.
    • USE_STEAM - This is not defined in the preprocessor directives in the project settings, but is instead defined within scripts when Steamworks.NET is installed and the project is on a desktop platform to enable MPE4S functionality.

    Next Steps

    While not required, you will likely want to install either Multiplayer Play Mode or ParrelSync to simulate local multiplayer. For more on this, see the testing page. See either the setup wizard or dependency management sections for how to install these tools.

    To get up and running, simply add the SteamManager component to the scene. If not already present, this will add the required steam_appid.txt, which is required by Steamworks.NET, to the root of the project, and sync the ID. The SteamManager is a singleton, meaning only one instance ever exists across all scenes. You can safely add a SteamManager into all scenes and it will automatically ensure only one exists at runtime. Most MPE4S functionality is accessed through the SteamManager in a static manner.

    To create a Steam game, you will need to obtain a Steamworks application ID. To obtain one, you will need to sign into Steamworks and sign up as a developer. While developing, it is common to use the application ID of 480 as a placeholder before obtaining your own. The application ID of 480 is a development ID provided by Steam. While using the application ID of 480, you will appear as playing "Spacewar" on Steam, and certain Steamworks features which require configuration on the Steamworks backend will not function. However, the application ID of 480 is fully capable of testing the core matchmaking and networking features provided with MPE4S.

    Next, learn how to create and find matches, how to implement networking between players including what frameworks are supported, and how to get player information.

    In This Article
    Back to top © 2025 Kaiju Solutions Inc.