Skip to main content

Cross-platform invites overview

EOS Online Subsystem provides a cross-platform invite system that goes beyond the functionality that the EOS SDK provides. It leverages the built-in online subsystems inside Unreal Engine to send and accept invites on the local platforms (such as Steam), and perform the work to convert a local platform invite into an EOS session or party join.

Prerequisites

In order for the cross-platform invite system to work, there are some prerequisites that must be met:

  • Cross-platform invites can be set to work with sessions or parties, but not both. You can control which one you are using cross-platform invites with via the "Presence Advertises" setting in Project Settings.
  • You must have at least one local subsystem set as a delegated subsystem in Project Settings. For example, if you want invites to work on Steam, you'd add the Steam subsystem to the list of delegated subsystems.

Subsystem-specific requirements

Some local subsystems require additional configuration before they can be used as delegated subsystems. This additional configuration might be needed to get cross-platform invites to work.

This additional configuration is documented under the "Authentication" section of the documentation:

Creating a session with cross-platform invites and presence

To have cross-platform invites work with sessions, you'll need to:

  • Ensure that "Presence Advertises" is to set "Session" in Project Settings.
  • Ensure that "Should Advertise" is enabled when the session is created.
  • Ensure that "Uses Presence" is enabled when the session is created.

Once this is done, the plugin will automatically advertise it on whatever local subsystems have been set as delegated subsystems in Project Settings.

Creating a party with cross-platform invites and presence

To have cross-platform invites work with parties, you'll need to:

  • Ensure that "Presence Advertises" is to set "Party" in Project Settings.
  • Ensure that "Join Request Action" is set to "Auto Approve" when the party is created.
  • Ensure that "Presence Permissions" is set to "Anyone" when the party is created.
  • Ensure that "Invite Permissions" is set to "Anyone" when the party is created.
  • Ensure that "Is Accepting Members" is enabled when the party is created.
  • Ensure that the party type is the primary party type (in blueprints this is available through the "Get Primary Party Type" node).

Once this is done, the plugin will automatically advertise it on whatever local subsystems have been set as delegated subsystems in Project Settings.

Further reading