Epic Online Services (EOS) are free, games-platform agnostic, services to launch, operate, and scale your game, whatever games platform your game clients run on, and whatever game engine you use for development, or if you use no game engine at all.
They are split into two subsets: EOS Game Services and EOS Epic Account Services.
- EOS Game Services enable you to build and integrate online functionality into your game. You can set up your game to use Games Services without any requirement for your players to have an Epic Games account.
(See the EOS Game Services section below for more information.) - EOS Epic Account Services provide player accounts. Use Epic Account Services to tap into an ecosystem of over 500 million players across multiple platforms and stores.
(See the EOS Epic Account Services section below for more information.)
EOS also provides services for the Epic Games Store (documentation: Epic Games Store Services).
To use any EOS services in your game, you integrate interfaces using the EOS tools. There is an interface for each service.
EOS has several tools, including:
- The Developer Portal
(Documentation: Developer Portal) - The EOS SDK and API - in C and C#
(Documentation: EOS SDK Key Information and EOS SDK API Reference) - The EOS Web API - HTTP APIs for common use cases
(Documentation: EOS Web API Introduction)
Note:
- For your game to use EOS Game Services, your players do not require an Epic Games account and your game does not have to use EOS Epic Account Services.
- Players can connect to your game using either an identity from a supported identity provider (such as a Steam account) or an Epic Games account. (See the section below on Connection Type and Player Accounts for information on which EOS interfaces to use.)
Video Introduction to EOS
See the introduction video on youtube.com: Introduction to Epic Online Services.
Video: Introduction to Epic Online Services
EOS Game Services
EOS Game Services enable you to build and integrate online functionality into your game. You can set up your game to use Games Services without any requirement for your players to have an Epic Games account.
You can use any of the following free services:
-
Multiplayer
Set up multiplayer sessions, lobbies, peer-to-peer networking and enable voice chat between players. -
Player progression
Track metrics, stats, and achievements for every player. Set up leaderboards and store encrypted, user-specific, game-specific data to cloud servers. -
Game operations
Use anti-cheat, player sanctions, reports and a ticketing system to manage your community. Store data for your game that is accessible to any player on any device where they can log in.
Multiplayer
Lobbies
Use the Lobbies Interface to enable players to create, remove, join, and leave lobbies.
Note:
The Social Overlay is part of EOS Epic Account Services. You can use this service to enable players to accept Lobby invites.
Documentation:
- EOS Game Services: Lobbies Interface
- EOS Game Services: Sessions Interface
- EOS Epic Account Services: Social Overlay
Peer-to-Peer (P2P) Connections
Use the NAT P2P Interface to enable players to connect with other players in a game.
Documentation:
- EOS Game Services: NAT P2P Interface
Sessions
Use the Sessions Interface to allow players to set up a match and use matchmaking to find other players for the match.
Documentation:
- EOS Game Services: Sessions Interface
- EOS Game Services: Lobbies Interface
Stats
Use the Stats Interface to define the stats for your game in the Developer Portal. You can include any statistical data about a player that you want to track, for example the number of items the player has collected. You can use these stats to determine when to unlock achievements and how to use rank players in leaderboards.
Documentation:
- EOS Game Services: Stats Interface
- EOS Game Services: Achievements Interface
- EOS Game Services: Lobbies Interface
Title Storage
Use the Title Storage Interface to retrieve game-specific data that is stored in encrypted form on cloud servers.
Documentation:
- EOS Game Services: Title Storage Interface
Voice Chat
Use the Voice Interface to integrate voice into your game. Either use EOS Lobbies (through the Lobbies Interface) or your own trusted server application.
Documentation:
- EOS Game Services: Voice Interface
Player Progression
Achievements
Use the Achievements Interface to access data about player achievements, unlock them for a player, get data on a player's progression for an achievement, and send notifications to players when they unlock an achievement.
Note:
You can offer XP to players in games published on the Epic Games Store by using Epic Games Store achievements.
Epic Games Store achievements are built on Epic Online Services achievements.
Documentation:
- EOS Game Services: Achievements Interface for Epic Online Services achievements
- Epic Games Store Services: Epic Games Store achievements
Leaderboards
Use the Leaderboards Interface to define leaderboards for your game, choose the stats to include, how you rank players, and the lifespan of the leaderboards.
Documentation:
- EOS Game Services: Leaderboards Interface
Metrics
Use the Metrics Interface to set up the Game Analytics dashboard in the Developer Portal and track worldwide game activity, player retention, and online player counts. You can view your game’s usage, including players’ active sessions and past sessions.
Documentation:
- EOS Game Services: Metrics Interface
- Developer Portal: Developer Portal introduction
Player Data Storage
Use the Player Data Storage Interface to save, download, copy, and delete player-related data for your game on cloud servers in encrypted form.
Documentation:
- EOS Game Services: Player Data Storage Interface
Game Operations
Easy Anti-Cheat
Use the Anti-Cheat Interface to prevent and detect player cheating within your game.
Documentation:
- EOS Game Services: Anti-Cheat Interface
Logging
Use the Logging Interface to analyze Epic Online Services diagnostic output during software development and after your game has shipped. You can filter the data and focus on the information you’re interested in, and set logging on or off for each interface.
Documentation:
- EOS Game Services: Logging Interface
Reports
Use the Reports Interface to collect and publish player behavior to Player Reports. View details about player cheating, verbal abuse and offensive profiles.
Documentation:
- EOS Game Services: Reports Interface
Sanctions
Use the Sanctions Interface to define and manage sanctions for your game in the Game Services section of the Developer Portal. You can view the details of all sanctions placed on a player.
Documentation:
- EOS Game Services: Sanctions Interface
- Developer Portal: Developer Portal introduction
EOS Epic Account Services
EOS Epic Account Services provide player accounts. Use Epic Account Services to tap into an ecosystem of over 500 million players across multiple platforms and stores.
Note:
To use EOS Epic Account Services, players of your game must have an Epic Games account (or a proxy Epic Games account).
They connect to your game using the Auth Interface.
Documentation:
- EOS Epic Account Services: Crossplay Across Platforms (for proxy Epic Games accounts)
- EOS Epic Account Services: Auth Interface
EOS Epic Account Services includes the following free services:
Crossplay
Enable players accessing your game from different storefronts to play together using a combined friends list.
Documentation:
- EOS Epic Account Services: Crossplay Across Platforms
Friends
Use the Friends Interface to enable players to invite friends to join a game-play session, and to retrieve and to display friend information to players. You can display to any logged-in player; their friends and their invite status in relation to other players. You can enable players to keep their friends list up-to-date by subscribing to friends status updates, and to add new friends.
Documentation:
- EOS Epic Account Services: Friends Interface
Presence
Use the Presence Interface to display a player’s status (online/offline/playing) within the game. The player’s status is also visible to their friends. You can update and delete a player’s presence data. In combination with the friends feature, players can also view their friends’ presence information.
Documentation:
- EOS Epic Account Services: Presence Interface
Social Overlay
Use the Social Overlay to display to a player their achievements and friends information, including if their friends are playing the same game.
Documentation:
- EOS Epic Account Services: Social Overlay
- EOS Epic Account Services: Friends Interface
Connection Type and Player Accounts
For your game to use EOS Game Services, your players do not require an Epic Games account and your game does not have to use EOS Epic Account Services. Players can connect to your game using either an identity from a supported identity provider (such as a Steam account) or an Epic Games account.
Note that how you set up a player's connection to your game depends on player identity:
- A player connecting via an identity from a supported identity provider (such as a Steam account) uses:
- EOS Game Services: Connect Interface.
- A player connecting via an Epic Games account uses both:
- EOS Game Services: Connect Interface, and
- EOS Epic Account Services: Auth Interface.
Documentation:
- EOS Games Services: Connect Interface
- EOS API Reference in C and C#: External credentials (for supported identity providers)
- The EOS Epic Account Services section of this document
- EOS Epic Account Services: Auth Interface