GENERAL

  • Updated EOS SDK to 1.14
  • New Subsystem: ProgressionSnapshot
    Subsystem was added but seems to be inactive/unusable for now

Epic Online Services SDK

Version 1.14

September 23, 2021

RELEASE NOTES

New Features:

  • Progression Snapshot, (Account Merge Service Preview)
    • Added a new feature in preparation for the introduction of account merge.
    • Progression snapshots are a way for developers to store key/value pairs about user progress in the application. This information will be used by account merge to help users make choices when combining account progress. See documentation for details.

AntiCheat

  • New: Added anti-cheat client support for Linux, including Wine/Proton
  • New: Added anti-cheat client support for Mac (Intel-based)
  • Bug Fix: Fixed bug causing anti-cheat gameplay data UnregisterClient event to not be sent.
  • Bug Fix: EOS_AntiCheatServer_RegisterEvent no longer accepts ‘.’ as part of an event name. This previously caused rejection by the backend but without a clear error.
  • Bug Fix: Fixed internal bug causing anti-cheat gameplay data UnregisterClient event to not be sent.
  • Bug Fix: Fixed possible anti-cheat issues if the system clock is updated at just the wrong moment.
  • Bug Fix: Fixed anti-cheat client module testing workflow not working correctly and leading to a “connection failed” error.
  • Updated Anti-Cheat ProtectMessage and UnprotectMessage APIs so that the final parameter OutBytesWritten only needs to be a valid pointer to an integer. Previously the integer needed to be initially set to the length of the output buffer.
  • Renamed anti-cheat ProtectMessage and UnprotectMessage API positional parameters for better clarity and consistency.
  • Added DamagePosition to EOS_AntiCheatCommon_LogPlayerTakeDamageOptions and deprecated HitBoneId. This provides more accurate information about hit locations.
  • Anti-Cheat client modules are now managed at the Deployment level rather than the Sandbox level. This is more consistent with other EOS services. You must be sure to update the EOS_AntiCheatTools files when updating your game to this version of the SDK.
  • The EOS Connect DeviceID auth method is not supported for anti-cheat. A new result code EOS_AntiCheat_DeviceIdAuthIsNotSupported is now returned for this case.

Authentication

  • New: Added new APIs EOS_Auth_CopyIdTokenEOS_Auth_QueryIdToken, and EOS_Auth_VerifyIdToken to allow game servers, online backends and other clients to securely verify identities of other Epic account users. Games using the existing EOS_Auth_CopyAuthToken and EOS_Auth_VerifyAuthToken APIs should consider switching to use ID tokens instead.
  • New: Added API support to detect a merged Epic account state for local users. This is relevant for an upcoming Epic Account Services functionality that will allow users to merge their separate Epic accounts into a single Epic account.

Connect

  • New: Added new APIs EOS_Connect_CopyIdToken and EOS_Connect_VerifyIdToken to allow game servers, online backends and other clients to securely verify another EOS user’s identity.
  • New: Added EOS_Connect_CopyIdTokenEOS_Connect_IdToken_Release, and EOS_Connect_VerifyIdToken APIs for the management of Connect ID Tokens. For more information, see the Connect Interface documentation.

ECommerce

  • New: Exposed DecimalPoint for the provided price in EOS_Ecom_CatalogOffer structure. For example, DecimalPoint ‘2’ and CurrentPrice64 ‘12345’ would be ‘123.45’.

Overlay Tech Platform

  • Bug Fix: Notification callbacks added by EOS_UI_AddNotifyDisplaySettingsUpdated and then removed by EOS_UI_RemoveNotifyDisplaySettingsUpdated before ticking are never invoked. Previously they would have been invoked once and if the game had freed some dependent state, a crash was possible.

P2P

  • It is now possible to get notifications when a connection is established with EOS_P2P_AddNotifyPeerConnectionEstablished and EOS_P2P_RemoveNotifyPeerConnectionEstablished.
  • It is now possible to clear queued incoming and outgoing packets for/from a given remote user and specific socket with EOS_P2P_ClearPacketQueue.

Player Data Storage

  • Bug Fix: Fixed an issue where reading files from the local cache of Player Data Storage could be very slow.
  • Improved PlayerDataStorage logging for many error cases.

Presence

  • Bug Fix: Fixed an issue when Presence service would keep trying to auto-update status when connection is lost.

Samples

  • Bug Fix: Fixed building Leaderboard sample on Mac / Linux by adding missing AssetUtils.cpp to Makefile.

Sanctions

  • Added TimeExpires and ReferenceId fields to EOS_Sanctions_PlayerSanction. This information was already visible in the EOS Developer Portal but previously not available through the SDK API.

Voice

  • Exposed EOS_RTC_SetSetting and EOS_RTC_SetRoomSetting APIs
    • “DisableEchoCancelation” Disables the use of echo cancellation for the audio channel. Default “False”
    • “DisableNoiseSupression” Disables the use of noise suppression for the audio channel. Default “False”
    • “DisableAutoGainControl” Disables the use of auto gain control for the audio channel. Default “False”
    • “DisableDtx” Global\Per room Allows to disable the use of DTX. Default “False”

Mobile

iOS

  • Bug Fix: Fixed an issue where an exception could occur on iOS 14 due to invalid characters in the URL scheme.

UPGRADE NOTES

AntiCheat

  • When upgrading to SDK 1.14, you must update the files start_protected_game.exe, EasyAntiCheat_EOS_Setup.exe, and anticheat_integritytool.exe to the latest versions from the bundled EOS_AntiCheatTools zip file.
  • If you want to activate Wine/Proton support for your Windows game, you must activate a Linux module in the EOS Developer Portal. See the EOS developer documentation for further details.

PROGRAMMING UPGRADE NOTES

AntiCheat

  • Usages of EOS_AntiCheatCommon_LogPlayerTakeDamageOptions should be updated to set the DamagePosition field instead of HitBoneId. This provides more accurate information about hit locations.