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_CopyIdToken, EOS_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_CopyIdToken, EOS_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.
Changed FEOSRTCAudioAudioBuffer struct to keep a pointer to the original data rather than converting it to a blueprint format that will not yield any benefits.