EOSCore 1.8.3

General

  • Updated EOS SDK to version 1.10.0
  • The plugin will use the Projects SavedDir if unable to use the users Documents folder as a CacheDir

PlayerDataStorage

  • New Function EOSPlayerDataStorageDeleteCache

EOS SDK 1.10.0

New features

  • The SDK now supports the Microsoft Xbox Series X/S and Sony PlayStation 5. Please contact Epic for access to these integrations via this link.
  • The SDK now supports the Microsoft Xbox GDK on the Xbox One and Xbox Series platforms. Please contact Epic for access to this integration via this link.

Release Notes

Lobbies

  • Updated the comment for EOS_Lobby_CopyLobbyDetailsHandle to indicate that the lobby must exist locally with the local user as a member. Dedicated servers, with no user logged in, cannot use this API.

Player Data Storage

  • EOS_PlayerDataStorage_DeleteCache has been added to allow for the removal of all cached files explicitly.
  • EOS_PlayerDataStorage_WriteFile and EOS_PlayerDataStorage_ReadFile will return EOS_InvalidParameters if the user passes 0 as ChunkSize value.
  • A limit on the number of simultaneous active file transfers has been set. At this time it’s set to 10 read transfers and 10 write transfers.
  • Bug Fix: Fix for potential crash during client shutdown if cache is being cleared at the time.

Presence

  • Added an error log when more than one of EOS_PresenceModification_SetJoinInfo, Sessions Service, or Lobbies Service are used at the same time. The EOS SDK integration with the Social Overlay can only use one of these at a time. Using more than one can lead to non-deterministic behavior within the Social Overlay.
  • Presence updates via EOS_Presence_SetPresence that would have previously been explicitly throttled will now be queued and updated at a later time instead of being ignored with a EOS_TooManyRequests result. Only the most recent call will be honored, previously queued calls will be overwritten.
    • We have set a 10RPM per client limit internally. Games that exceed this will need to adjust their rates.

Social Overlay

  • Bug Fix: Fixed a bug where first time players could have a delayed experience with the Social Overlay.
  • Bug Fix: Unlocking Achievements will now update the local cache and trigger the Social Overlay Notification.

Stats

  • EOS_Stats_QueryStats and EOS_Stats_IngestStat have additional validation for the TargetUserId parameter and will return EOS_InvalidUser if not set.

Title Storage

  • The LocalUserId variable can’t be set in queries when in server mode and will generate an error now. All Title Storage functions are affected.

Upgrade notes

Presence

  • Presence updates via EOS_Presence_SetPresence that would have previously been explicitly throttled will now be queued and updated at a later time instead of being ignored with a EOS_TooManyRequests result. Only the most recent call will be honored, previously queued calls will be overwritten.
    • We have set a 10RPM per client limit internally. Games that exceed this will need to adjust their rates.

EOSCore 1.8.0

General

This update is only available for UE4.25+

REMOVE ALL PREVIOUS EOSCORE DEFINITIONS FROM YOUR DefaultEngine.ini FILE WHEN UPGRADING!

  • Updated EOS SDK to version 1.9.0
  • Added “FromUnixTimestamp” function to convert a Unix timestamp to a blueprint string
  • Added UserIndex to GetCurrentProductId
  • Added UserIndex to GetCurrentAccountId
  • All blueprint nodes now require a WorldContextObject
  • All blueprint defined delegates have been removed, use the appropriate “Add Notify” callback functions instead or setup your own delegates when invoking functions
  • Removed ProductName from DefaultEngine.ini (will now use your UE4 Project Name)
  • Removed ProductVersion from DefaultEngine.ini (will now use UE4 Project Version)
  • New supported command line arguments:
    -AUTH_TYPE=devtool
    Login using the DevTool
    -AUTH_TYPE=autologin
    Attempt to autologin using saved credentials from previous session
    -AUTH_TYPE=portal
    Authenticate using the Browser (portal)
    -AUTH_TYPE=deviceid
    Authenticate using a local device id, will attempt to create a device id if not found
    -EOSConfig=configurationName
    Override the EOS configuration specified in the Project Settings
  • You must now configure EOSCore using Project Settings
  • New Function: Login()
    This function is meant to be used in conjunction with the new EOSCore OnlineSubsystem (OSS) and its purpose is to simplify the Login procedure used by EOS.
    More details about this function will be available later
  • Removed CreateSessionResultFromInviteId as this function is no longer needed, it’s been replaced with “ListenForSessionInvites“, see example below.
  • Added EOS_Initialized() function that you can call to see if EOS has initialized or not
FromUnixTimestamp
New Settings
New Login Node
Check if EOS has initialized

Chat

  • General Chat Subsystem optimizations
  • Listening for Chat messages now requires a valid LocalUserId
  • You can now clear all chat listeners by invoking ClearAllChatListeners

OnlineSubsystem (OSS)

  • The OSS has been rewritten to a SocketSubsystem.
  • Removed EOSPlatformModule, all code has been moved to the OnlineSubsystemEOSCore
  • Changed URL layout when connecting to multiplayer games:
    Old: eoscore.remote_id
    New: eos:remote_id:gamesession:port
  • New function: “UpdateUniqueNetIdFromOSS“, this function will manually update your players netid from the OSS. This is useful if you want to manually login using the Async Nodes. You must have a valid UniqueNetId assigned to your player if you want to use the default CreateSession nodes for example.

Android

  • You can now Host / Join sessions using Android

Mods

  • Added Mods Interface Support

EOS SDK 1.9.0 Changelog

New features

  • Mods support exposes interfaces that allow for interaction with the Epic Games Store Mod Marketplace and supports:
    • Enumeration of installed mods.
    • Enumeration of available mods.
    • Mod install, uninstall, and update.

Release Notes

C# SDK

  • Removed reflection dependency from the wrapper.
  • SDK functions and delegates that output strings and byte arrays through parameters have been simplified. If they previously output a StringBuilder, they now output a string, and they no longer require a buffer length to be passed in. See upgrade notes for more details.
  • Bug Fix: The sizeInBytes and alignment parameters of Platform.AllocateMemoryFunc and Platform.ReallocateMemoryFunc are now defined as UIntPtr instead of int to reflect the different size requirements between 32 bit and 64 bit platforms. See upgrade notes for more details.

Connect

  • Bug Fix: Fixed EOS_Connect_QueryProductUserIdMappings returning EOS_UnexpectedError if the queried users had a linked Device ID.

EOS Core

  • Bug Fix: Fixed json serialization and deserialization of doubles when games use the CRT setlocale() function.
  • Bug Fix:
    • Set the default thread affinity of EOS SDK created threads to something more reasonable.
    • EOS_Initialize_Options now contains an OverrrideThreadAffinity option. This EOS_Initialize_ThreadAffinity structure defines thread affinity in several categories It’s important to note that these values will be platform dependent.

Lobbies

  • New: Lobby search now supports a new EOS_CO_CONTAINS operator. Attributes matching a CASE SENSITIVE partial string will be returned.

Mod Marketplace

  • Mods support allows interfaces with the Epic Games Store Mod Marketplace and allows:
    • Enumeration of installed mods.
    • Enumeration of available mods.
    • Mod install, uninstall, and update.

Overlay Tech Platform

  • New: Added new flags for EOS_Platform_Create to opt-in to experimental overlay support on DirectX 9, Direct3D 10, and OpenGL for Windows:
    • EOS_PF_WINDOWS_ENABLE_OVERLAY_D3D9
    • EOS_PF_WINDOWS_ENABLE_OVERLAY_D3D10
    • EOS_PF_WINDOWS_ENABLE_OVERLAY_OPENGL

Samples

  • Added a new sample to demonstrate the mod marketplace
  • Added support for reading / writing settings
    • Developer Authentication Tool credentials will be saved to settings, ready to be loaded with the next sample run.
  • Added support for automatic login via Launcher command line options.
  • Persistent auth token is now deleted after getting invalid auth result when attempting to log in with persistent auth login.
  • Added a popup dialog with a message about invalid params for EOS_Platform_Create.
  • Pressing enter while Auth Dialog text fields are in focus will start login when all relevant text fields are valid.
  • Bug Fix: Fixed a resource leak inside the sample framework

Session Based Matchmaking

  • New: Session search now supports a new EOS_CO_CONTAINS operator. Attributes matching a CASE SENSITIVE partial string will be returned.

Social Overlay

  • Removed erroneous logs when Leaderboards are not currently configured.

EOSCore:: 1.7.7

General

  • Added a couple of nullptr checks

Title Storage

The Title Storage Interface enables developers using Epic Online Services (EOS) to retrieve encrypted data from cloud servers. Data that you store through this interface is accessible to any user on any device where they can log in. While similar to the Player Data Storage Interface, this interface is specialized to handle game-specific data rather than user-specific data, and can provide different versions of files based on the user’s platform, region, or other conditions.