UE 5.5 / 5.6 / 5.7

Universal Online Services

One Unreal Engine plugin that exposes both Steamworks and Epic Online Services to Blueprints. 46 subsystems. No abstraction layer. Direct, typed, Blueprint-first access to every interface.

Built for shipping multiplayer

Every Steamworks and EOS interface, surfaced as a typed Blueprint subsystem.

46 Subsystems

22 Steam + 24 EOS Game Instance Subsystems, each one a 1:1 wrapper around its underlying SDK interface.

Blueprint-First

Every method is a UFUNCTION(BlueprintCallable). Every event is a multicast delegate. Drop nodes onto a graph and wire them up.

Steam + EOS, side by side

No abstraction layer. Both SDKs run in the same project, ready for whichever platform the player is on.

Achievements + Stats

Unlock Steam achievements, ingest EOS stats, query leaderboards from Blueprint with one node each.

Cloud Saves

Steam Cloud and EOS Player Data Storage. Read, write, list, delete - synchronous on Steam, streaming on EOS.

Voice + RTC

EOS RTC voice rooms with mic / device / volume controls, plus Steam voice capture and decompression.

Dedicated Server Ready

Steam Game Server lifecycle (Init / LogOn / Shutdown) and EOS Anti-Cheat Server are first-class.

Anti-Cheat

Easy Anti-Cheat client + server runtime APIs surfaced as BeginSession / EndSession / PollStatus nodes.

Cross-engine

Same source compiles cleanly against UE 5.5, 5.6, and 5.7. Per-engine prebuilt Dist binaries shipped in the same archive.

Every subsystem

Each one is a UGameInstanceSubsystem reachable from any Blueprint withGet Game Instance Subsystem. The full reference lives in the docs.

Steam (22)

  • -Core
  • -Friends
  • -Matchmaking (Lobbies)
  • -User Stats + Achievements
  • -Remote Storage (Cloud)
  • -Apps (DLC + Build)
  • -Utils
  • -Screenshots
  • -Music
  • -Parental Settings
  • -Remote Play
  • -User (Auth + Voice)
  • -Input (Steam Input)
  • -Inventory
  • -UGC (Workshop)
  • -HTTP
  • -Networking Sockets (Modern P2P)
  • -Networking Utils
  • -Networking Messages
  • -Matchmaking Servers (Browser)
  • -Timeline (2024+)
  • -Game Server

EOS (24)

  • -Core
  • -Auth
  • -Connect
  • -User Info
  • -Friends
  • -Presence
  • -Achievements
  • -Stats
  • -Leaderboards
  • -Player Data Storage
  • -Title Storage
  • -P2P
  • -Lobby
  • -Sessions
  • -Ecom
  • -Mods
  • -Progression Snapshots
  • -Sanctions
  • -Reports
  • -Metrics
  • -Custom Invites
  • -UI Overlay
  • -Anti-Cheat (Client + Server)
  • -KWS
  • -RTC + RTC Audio
  • -Version

How it works

Three steps from drop-in to live calls.

01

Drop in the plugin

Copy Dist/UE5.X/UniversalOnlineServices into your project Plugins folder. Works on source or Launcher engines.

02

Set credentials

Project Settings -> Plugins -> Universal Online Services. Steam App ID and / or EOS Product / Sandbox / Deployment / Client.

03

Call from Blueprint

Get the subsystem you need (UOS Steam Lobby, UOS EOS Auth, etc.) and wire its events. No C++ required.

Need help?

Read the docs first - if you're still stuck, hop into the Discord.