Crossplay Integration Kit
Online Services

Online Service Capability Matrix

Generated unified-role and OSS facade support by open provider ID

Online Service Capability Matrix

This page is generated by python Scripts/gen-capability-matrix.py. The first table reads the provider catalog registrations that feed UCIK's typed role registries. The second reads each OSS facade's GetCapabilities() implementation. Runtime availability can still depend on platform, configuration, initialization, and login state.

Unified provider roles

ProviderIdentity sourceIdentity authorityLobbiesSessionsSocialProgressionStorageTransportVoiceHostingMatchmaking
Amazon Cognito Identity Pool (Betide.AWS.Cognito.IdentityPool)Yes
Amazon Cognito User Pool (Betide.AWS.Cognito.UserPool)Yes
Amazon GameLift Servers (Betide.AWS.GameLift)YesYes
Discord (Betide.Discord)YesYes
Edgegap (Betide.Edgegap)YesYes
Epic Online Services (Betide.EOS)YesYesYesYesYesYesYesYes
Game Center (Betide.GameCenter)YesYesYes
Google (Betide.Google)Yes
Google Play Games (Betide.GooglePlay)YesYes
Local Matchmaking (Betide.Matchmaking)Yes
Sign in with Apple (Betide.Apple)Yes
Steam (Betide.Steam)YesYesYesYesYesYesYes

Commerce is deliberately not a portable UCIK role. Use the kit-specific commerce API shown in the OSS facade table when your product needs its platform-exact option set.

EOS and Steam facade interfaces

InterfaceBetide.EOS V1Betide.EOS V2Betide.Steam V1Betide.Steam V2Notes
AuthImplementedImplementedImplementedImplemented
SessionsImplementedImplementedImplementedImplemented
LobbiesImplementedImplementedImplementedImplemented
FriendsImplementedImplementedImplementedImplemented
PresenceImplementedImplementedImplementedImplemented
AchievementsImplementedImplementedImplementedImplemented
LeaderboardsImplementedImplementedImplementedImplemented
StatsImplementedImplementedImplementedImplemented
UserFileImplementedImplementedImplementedImplemented
UserInfoImplementedImplementedImplementedImplemented
CommerceImplementedImplementedImplementedImplemented
ExternalUIImplementedImplementedImplementedImplemented
ConnectivityImplementedImplementedImplementedImplemented
TitleFileImplementedImplementedN/AN/ASteam has no developer-published title-file service; use UserFile for per-user Remote Storage.
PrivilegesImplementedImplementedImplementedImplemented
VoiceChatImplementedImplementedNot advertisedNot advertised

Source

The generator reads the provider catalog declarations and four facade implementations directly:

  • Source/EOSIntegrationKit/Private/EOSIntegrationKit.cpp
  • Source/SteamIntegrationKit/Private/SteamIntegrationKit.cpp
  • Source/DiscordGame/Private/DiscordGame.cpp
  • Source/GameCenterKit/Private/GameCenterKit.cpp
  • Source/PlayGamesServices/Private/PlayGamesServices.cpp
  • Source/AWSIKCognito/Private/AWSIKCognito.cpp
  • Source/EdgegapIntegrationKit/Private/EdgegapIntegrationKit.cpp
  • Source/AWSIKGameLift/Private/AWSIKGameLift.cpp
  • Source/MatchmakingIntegrationKit/Private/MatchmakingIntegrationKit.cpp
  • Source/EIKCore/Private/V1/EIKOnlineServicesV1.cpp
  • Source/EIKCore/Private/V2/EIKOnlineServicesV2.cpp
  • Source/SIKCore/Private/V1/SIKOnlineServicesV1.cpp
  • Source/SIKCore/Private/V2/SIKOnlineServicesV2.cpp

Steam TitleFile is N/A because Steamworks has no developer-published title-file service corresponding to Unreal's ITitleFile; Steam Remote Storage is exposed through UserFile instead.

On this page