关于EOS SDK
你可以在Epic Games开发者门户(dev.epicgames.com/dev-portal)下载Epic在线服务(EOS)SDK。
除了不同版本的EOS SDK,根据你的游戏客户端运行的平台,我们还提供了不同平台类型的SDK供下载:.
-
Windows、macOS、Linux - EOS SDK(C版本),以及EOS SDK(C#版本)。
-
移动端 - EOS SDK(iOS版本),以及EOS SDK(安卓版本)。
-
主机端 - 为游戏主机平台提供了EOS SDK(C版本)、以及EOS SDK(C#版本)的下载。
主机端的SDK下载只提供给那些通过平台持有者和Epic Games批准的开发者。
平台持有者是指:微软(Xbox One、Xbox Series X)、索尼(PlayStation 4、PlayStation 5)、任天堂(Switch)。
如需下载主机版本的SDK并获得相关文档:-
查阅开发者门户(dev.epicgames.com/dev-portal) ,了解如何向平台持有者申请主机开发者权限。
-
获得平台持有者批准后,你可以使用 EOS主机开发者申请 表格,向Epic Games进行申请。该表格位于eoshelp.epicgames.com。
-
版本说明
2022
1.15.4 - 2022年11月16日
反作弊
- 新功能:改善了
AntiCheatServer
日志输出,包含调用EOS_AntiCheatServer_SetClientNetworkState
的相关信息。 - 新功能:通过减少游戏服务器对反作弊服务发出的HTTP请求,改善了反作弊服务服务器的性能。这样可以让服务器支持更多的玩家。
- 新功能:
AntiCheatServer
现在会在游戏调用EOS_AntiCheatServer_LogPlayerDespawn
时向反作弊服务发送更多的数据。 - 漏洞修复: 修改了潜在的问题,当服务器较为繁忙时,反作弊服务可能会错误地将玩家从游戏会话中移除。
身份验证
- 漏洞修复:
EOS_Auth_VerifyIdToken
现在不会因为你在SDK从EOS服务收到配置之前使用了EOS_Auth_VerifyIdToken
而针对有效的ID令牌返回EOS_Auth_InvalidToken
。EOS_Auth_VerifyIdToken
现在会正确地等待配置然后再返回EOS_Success
。
EOS SDK in C#
- 新功能:EOS SDK in C# 现在支持多次pin同一个缓冲区。除了改善性能以外,这样还允许就地加密和解密反作弊服务的网络信息。
连接
- 漏洞修复:
EOS_Connect_VerifyIdToken
现在不会因为你在SDK从EOS服务收到配置之前使用了EOS_Connect_VerifyIdToken
而针对有效的ID令牌返回EOS_Connect_InvalidToken
。EOS_Connect_VerifyIdToken
现在会正确地等待配置然后再返回EOS_Success
。
电子商务
- 新功能:在
EcomInterface
添加了一个新的API,EOS_Ecom_QueryEntitlementToken
,用于检索授权令牌。
社交覆层
- 漏洞修复: 玩家现在可以看到并点击所有玩家的 档案(PROFILE) 按钮,不论他们如何连接到游戏会话。比如,一个通过Epic Games商城连接到游戏会话的玩家可以看到并点击另一个通过Steam连接的玩家的 档案(PROFILE) 按钮。之前不同平台的玩家不能看到互相的 档案(PROFILE) 按钮。
- 漏洞修复: 修复了
EOS_UI_ShowBlockPlayer
和EOS_UI_ShowReportPlayer
失败的问题。如果你用平台标记停用了社交覆层,导致SDK错误地将网络认定为断开连接,便会出现这样的问题。
大厅
- 漏洞修复: 玩家现在限制于同时16个大厅。如果试图创建多于16个大厅,会导致
EOS_LimitExceeded
错误回应。
点对点
- 新功能: 点对点现在使用
dcSCTP SCTP
库实现而不是usrsctp
。这样会改变usrsctp
带来的变更地址安全问题,并且能够在不良网络状态下改善相应度。- 注意: 该变更可以反向兼容,但是我们建议你尽快更新到最新的版本,从而改善安全性并提高性能。
- 漏洞修复: 修复了正常的连接会在任何干扰之后发生超时的问题。
会话
- 漏洞修复: 玩家现在限制于同时16个大厅。如果试图创建多于16个大厅,会导致
EOS_LimitExceeded
错误回应。
统计数据
- 漏洞修复: 我们移除了
EOS_Stats_IngestStat
中LocalUserId
必须和TargetUserId
一样的限制。这样可以让非本地用户根据客户端政策ingestForAnyUser
来载入他们的统计数据。
更新说明
大厅
- 漏洞修复: 玩家现在限制于同时16个大厅。如果试图创建多于16个大厅,会导致
EOS_LimitExceeded
错误回应。
会话
- 漏洞修复: 玩家现在限制于同时16个大厅。如果试图创建多于16个大厅,会导致
EOS_LimitExceeded
错误回应。
废弃
反作弊
- 废弃:我们弃用了
EOS_AntiCheatServer_RegisterClientOptions
中的字符串参数AccountId
,并且加入了一个新的EOS_ProductUserId UserId
参数来替代它。 新的EOS_AntiCheatServer_RegisterClientOptions
参数有类型。- 注意: 如果你的游戏服务器还不能安全地从游戏客户端接收
EOS_ProductUserId
,我们建议你使用EOS游戏服务的Connect Interface EOS Connect ID Tokens
而不是EOS_AntiCheatServer_RegisterClientOptions
。
- 注意: 如果你的游戏服务器还不能安全地从游戏客户端接收
EOS核心
- 废弃: 我们弃用并替换了一些宏来符合
EOS_<system_type>_<function_name>_API_LATEST
的标准EOS SDK命名规则。我们将字符串OPTIONS
从受影响的宏中移除了:EOS_PLAYERDATASTORAGE_*_API_LATEST
和EOS_TITLESTORAGE_*_API_LATEST
。比如,EOS_PLAYERDATASTORAGE_QUERYFILEOPTIONS_API_LATEST
会改为EOS_PLAYERDATASTORAGE_QUERYFILE_API_LATEST
。- 注意: 为了反向兼容,弃用的宏仍然保存着,但是我们会在将来的版本中将其移除。我们建议将任何使用旧命名规则的弃用的宏用新的命名规则替代。
平台相关
索尼PlayStation
- 新功能:针对索尼PS4平台SDK版本10.008.001添加了版本支持,并且针对索尼PS4平台SDK版本9.508.001保留了支持。
- 新功能:针对索尼PS5平台SDK版本6.00.00.38添加了版本支持,并且针对索尼PS5平台SDK版本5.00.00.33保留了支持。
- 漏洞修复: 修复了PS5上启用了语音聊天的玩家加入或退出大厅时游戏崩溃的问题。
微软Xbox
- 新功能: 针对微软 GDK 2022年6月QFE2(220602)版本添加了版本支持,并且针对2022年2月QFE1(220301)版本保留了支持。
版本1.15.3 - 2022年10月6日
自2022年10月6日以后,EOS SDK的1.15.3版本中新增了针对Xbox和PlayStation的SDK内容修复。
版本1.15.3 - 2022年9月19日
版本说明
移动端
安卓
-
新增:现在有两类安卓SDK。新增的安卓SDK属于静态库并且链接了
libc++_static.a
。当前这款安卓SDK属于动态库并链接了libc++_shared.so
。两款SDK都可以在SDK下载页面中下载。每个SDK都有一个头文件。
- 静态二进制文件位于
~/SDK/Bin/Android/static-stdc++
。 - 动态二进制文件位于
~/SDK/Bin/Android/dynamic-stdc++
。
如果满足以下条件,请使用静态类型:
- 你的游戏引擎(例如UE5.1)或引擎中的库文件使用了自定义的new或delete运算符。
libc++_shared.so
无法很好地支持这两个运算符。 - 你的游戏或游戏中的库使用了libc++_static.a。安卓不支持混合
libc++_static.a
和libc++_shared.so
。请确保你的所有代码和库以及你在第三方库中使用的所有内容都链接了libc++_static.a
。
- 静态二进制文件位于
注意
- 如果你的游戏用到了P2P功能,并且你使用的EOS SDK版本为1.15.2,我们强烈建议你将SDK尽快升级至1.15.2.1。
- 我们在这里包含了1.15.2版本说明以供参考。
版本1.15.2.1 - 2022年8月30日
版本说明
P2P
- 漏洞修复:修复了1.15.2中的P2P功能在特定情况下会导致端点间在连接成功后很快超时的新问题。
版本1.15.2 - 2022年8月26日
版本说明
新功能
支持Mac上的苹果芯片
- 新功能:SDK现在使用通用的dylib,支持Mac上的苹果芯片。
- 注意: 反作弊目前不支持苹果芯片。
更新:新功能内容、漏洞修复、改进、弃用
反作弊
- 新功能: 在
anticheat_integritytool.cfg
配置文件中,现在可以为你的游戏客户端配置设置,比如玩家设备上允许同时运行的游戏示例最大数量。 - 漏洞修复: 我们修复了
EOS_AntiCheatClient_RegisterPeer
的崩溃问题,通常会在SDK 1.15版本中使用新头文件而不重新构建项目时发生。 - 漏洞修复: 反作弊服务器不再重新尝试由于EOS服务关闭而失败的请求。除此以外,反作弊服务器不会在玩家已经离开游戏会话时重试。
- 漏洞修复: 我们修复了反作弊验证工具SDK 1.15中发现的Unix和macOS中的漏洞:工具输出至了错误的位置。现在输出位置纠正到了
EasyAntiCheat/Certificates
文件夹,与之前SDK版本的行为一致。 - 漏洞修复: 如果反作弊服务停用,反作弊软件引导程序不再试图加载缓存的模块。
- 漏洞修复: 修复了一些macOS Monterey系统中发生的SDK初始化崩溃。
- 漏洞修复: 修复了使用AMD Ryzen CPU的玩家设备上的反作弊引导程序的延迟问题。
- 漏洞修复: 修复了反作弊引导程序初始化失败的问题,通常在玩家的GPU不支持大于2048x2048的纹理的时候出现。
- 漏洞修复: 修复了反作弊引导程序的用户界面难以看到的问题,通常在启动画面为白色或者包含白色元素的情况下出现。
- 漏洞修复: 修复了反作弊启动程序和最新版本的Arch Linux之间的兼容性问题。该问题在Steam Deck运行使用Proton编译的Windows游戏时也会出现。
- 如需修复该问题,请将老版本的
start_protected_game.exe
替换为新SDK中的对应可执行文件,然后在开发者门户上为你的游戏发布一个最新的Linux反作弊模块。无需其他改动。
- 如需修复该问题,请将老版本的
- 改进: 反作弊引导程序的二进制文件(可执行文件)现在位于一个集束。该可执行的集束意味着:
- 我们为macOS的可执行文件集束添加了一个默认图标,所以现在macOS和Windows上的图标一致了。
- 改进: 反作弊引导程序不会再将其资源文件缓存到玩家设备的磁盘上。
- 改进: 在Windows中,反作弊引导程序会在任务栏中显示你的游戏的可执行文件的图标。如果你在
~/<game root>/ EasyAntiCheat
目录中添加自定义图标,将会覆盖默认的图标。 - 改进: 反作弊验证工具现在有了更多的使用示例。可以通过运行
anticheat_integritytool.exe --help
来进行查看。
验证
- 新功能:如果你在游戏中停用了Epic在线服务覆层,或者没有安装,验证界面会使用一个系统浏览器来让玩家登录。
- 漏洞修复:修复了在糟糕网络环境中注销回调触发多次并多次返回成功注销消息的错误。
连接
- 漏洞修复: 修复了
EOS_Connect_Login
无法适应UTF-8最大32字符限制的问题。
EOS核心
- 新功能:iOS和安卓示例现在使用SDK 1.15中加入的SDK挂起/继续和网络连接/断开连接API作为示例。
- *新功能:EOS SDK现在需要使用Steamworks API (
EOS_IntegratedPlatform_Steam_Options
)。你必须使用Steamworks API以便使用1.48或更高版本的Steamworks SDK。如果你使用了1.48之前的Steamworks,Steam接入无法运行。 - 漏洞修复:
EOS_Platform_Create
现在能够正确检测SDK 1.15版本之前的头文件,并且将默认的NetworkStatus
在所有平台上都设为EOS_NS_Online
。- 现在: 在所有主机平台上,默认的网络状态为离线。这样对于使用
EOS_Platform_SetNetworkStatus
时更方便管理。 - 之前: 在主机平台上,你应该只在游戏在线的时候调用
EOS_Platform_Create
。如果游戏离线,你需要先调用EOS_Platform_Release
。如果你的游戏使用SDK1.15之前的头文件,那么SDK 1.15不会保持这一特性。这个修复修复了该问题。
- 现在: 在所有主机平台上,默认的网络状态为离线。这样对于使用
P2P
- 新功能:修复了
EOS_P2P_SendPacket
中的某个因为内部库的线程异步阻塞导致的性能问题。 - 新功能:
EOS_P2P_ReceivePacket
不再需要调用EOS_Platform_Tick
来接收新数据包。 - 新功能:在
EOS_P2P_SendPacket
中添加了一个新功能字段。该字段名为DisableAutoAcceptConnection
,允许自动接受来自数据包发送逻辑中的连接请求。- 如果你使用该选项,你的游戏必须始终使用
EOS_P2P_AcceptConnection
来打开连接。 - 如果你使用
EOS_P2P_SendPacket
,则在符合以下两种条件时会返回EOS_EResult::EOS_NoConnection
:- 远程端点未接受连接。
- 连接在远程端点上一次接受连接后已经关闭。
- 如果你使用该选项,你的游戏必须始终使用
- 新功能:添加了
EOS_P2P_AddNotifyPeerConnectionInterrupted
函数,它会监听连接中的“非致命”断开。如果该函数返回“断开”消息,会触发以下其中一个回调,以便将连接状态通知给你的游戏:EOS_P2P_OnPeerConnectionEstablishedCallback
- 连接已经重新建立。EOS_P2P_OnRemoteConnectionClosedCallback
- 连接失败并关闭。
电子商务
- 新功能: 将
ReleaseDate
和EffectiveDate
,添加到了EOS_Ecom_CatalogOffer
。 - 新功能: 向电子商务接口添加了两个新的API:
EOS_Ecom_GetLastRedeemedEntitlementsCount
用于抓取上一个EOS_Ecom_RedeemEntitlements
调用期间取回的权限数量。EOS_Ecom_CopyLastRedeemedEntitlementByIndex
用于根据序数抓取一个取回的权限id。
- 漏洞修复: 修复了
EOS_Ecom_RedeemEntitlements
在传入错误的权利ID(entitlement ID)后无法返回“成功”消息的错误。 - 弃用: 我们从
EOS_Ecom_CatalogOffer
中弃用了PurchasedCount
字段。- 注意: 请勿使用
PurchasedCount
字段。 - 现在:
PurchasedCount
总是返回数值0
。 - 之前: 1.15.2之前的SDK中,除非为商品配置了
PurchaseLimit
否则EOS服务会发送PurchasedCount
数值0。我们可能不再支持该行为,所以请不要依赖于该数值。
- 注意: 请勿使用
示例
- 新功能:在示例项目中,Steam登录现在改为使用Steam Auth Session Ticket而非Steam Encryption Application Ticket,以便改善安全性。
基于会话的匹配
- 漏洞修复:修复了
EOS_Sessions_JoinSession
的错误——现在它不再会多次调用CompletionDelegate
并且当操作需要HTTP
条目时不再会返回EOS_NotFound
。
特定平台
macOS
- 漏洞修复: 修复了开发者授权工具和反作弊引导程序不打开的问题。
主机通用更改
- 新功能:用于主机的EOS SDK现在对应一个主机SDK的两个发布版本。一个主机SDK(例如,微软Xbox SDK、Sony PlayStation SDK、Nintendo Switch SDK)的两个发布版本为:
- 最新的发布版本。
- 上一个发布版本。
- 注意: 这适用于所有主机的EOS SDK和将来所有用于主机的EOS SDK。
- 漏洞修复:
EOS_Platform_Create
现在能够正确检测SDK 1.15版本之前的头文件,并且将默认的EOS_ENetworkStatus
在所有平台上都设为EOS_NS_Online
。这样会解决主机上的反向兼容性问题。
索尼PlayStation
- 新功能: 对PS4 SDK 9.008.001和PS5 SDK 4.000.00.31添加了版本支持。
任天堂Switch
- 新功能: 对任天堂Switch SDK 14.3.0添加了版本支持并保留了对任天堂Sitch SDK 13.3.2的支持。
微软Xbox
- 新功能: 对Xbox GDK 220301添加了版本支持并保留了对Xbox GDK 211001的支持。
版本1.15.1 - 2022年7月1日
版本说明
注意 - 如果你在Stream上发布游戏:
- 如果你已经下载了并在使用EOS SDK 1.15(C或C#)版本,你需要下载并使用1.15.1版本。
- 1.15.1更新了C和C#版本SDK中对Steam的认证的部分。适用于主机的SDK不受影响。
C版SDK和C#版SDK
身份验证
- 废弃:
EOS_Auth_Login
中的EOS_ECT_STEAM_APP_TICKET
已停止使用。请使用EOS_ECT_STEAM_SESSION_TICKET
。- 注意:适用于主机的SDK不受影响。
1.15 - 2022年6月16日
版本说明
新功能
跨平台游戏
在PC上实现无缝跨平台游戏:使用跨平台游戏功能可在Steam和Epic Games商城中统一你的玩家和匹配池。 请参阅文档中的新内容,了解更多详情。
现有功能、新功能、漏洞修复、停止维护内容 反作弊
- 新功能 :反作弊点对点模式现在支持PC和主机用户之间的跨平台游戏。
- 新功能 :已将客户端
EOS_AntiCheatClient_PollStatus
替换为你可以通过EOS_AntiCheatClient_AddNotifyClientIntegrityViolated
访问的回调函数。 - 漏洞修复 :修复了
AntiCheatServer
的一个问题,之前玩家可以利用这个漏洞规避检测来作弊。 - 漏洞修复 :针对一些macOS Monterey系统修复了SDK初始化时的崩溃问题。
- 改进 :优化了反作弊Gameplay数据功能的错误日志记录。
- 改进 :优化了反作弊点对点模式的错误日志记录。
- 停止维护 :
EOS_AntiCheatClient_RegisterPeerOptions AccountID
现在已废弃。PeerProductUserId
取代了它。 - 改进 :反作弊引导程序的二进制文件(可执行文件)现在位于数据包中。此可执行文件数据包意味着:
- 我们为macOS可执行文件数据包添加了默认图标,所以现在它在macOS中的图标与Windows中的图标相同。
- 你可以向macOS上运行的游戏添加更多修改内容。
- 已知问题: 原本计划在EOS SDK 1.15上线的反作弊工具并没有包含,更改为在EOS SDK 1.15.1中发布
- 已知问题: 如果你使用EOS SDK 1.15库调用EOS_AntiCheatClient_RegisterPeer,那么必须用新的1.15头文件来重新构建你的游戏。否则游戏会崩溃。
身份验证
- 新功能(重大更改) :在Windows上,
EOS_LCT_AccountPortal
和EOS_LCT_ExternalAuth
登录类型现在需要将EOS可再发行程序包安装在游戏中。- 如需了解更多信息,请参阅可再发行程序包安装工具。
- 新功能 :SDK现在支持可验证的家长同意。可以提示年幼的用户获得家长同意来使用其Epic账号或在游戏中共享数据。
- 新功能 :SDK包现在包含EOS引导程序以及EOS引导程序工具,用于在Windows PC上进行跨平台游戏的EOS可再发行程序包。
- 如需了解更多信息,请参阅可再发行程序包安装工具。
- 漏洞修复 :修复了
EOS_Connect_OnLoginStatusChangedCallback
不报告本地用户的身份验证会话已过期的问题。 - 漏洞修复 :修复了导致
EOS_P2P_QueryNATType
在EOS_Platform_Create
之后过早调用时始终失败并使用错误的NAT服务器的问题。 - 漏洞修复 :已将
EOS_EResult::EOS_Auth_PersistentAuth_AccountNotActive
重命名为EOS_EResult::EOS_Auth_AccountNotActive
。这将删除Persistent
,因为它返回的Epic账号并不仅仅特定于持久(EOS_LCT_PersistentAuth
)登录类型。
EOS核心
-
新功能 :为Windows PC添加了
EOS_Platform_GetDesktopCrossplayStatus
API。在Epic Games商城外部发布的游戏可以使用此API验证Epic账号登录的游戏内覆层是否随时可用。 -
新功能(重大更改) :为平台界面添加了下面列出的API。它们在游戏暂停和恢复时以及本地系统的网络连接状态发生变化时通知SDK。
有四个全新API:
EOS_Platform_SetApplicationStatus
EOS_Platform_SetNetworkStatus
EOS_Platform_GetApplicationStatus
EOS_Platform_GetNetworkStatus
- 所有游戏现在都必须调用以下API,SDK才能正确运行:
EOS_Platform_SetApplicationStatus
EOS_Platform_SetNetworkStatus
已知问题:iOS和Android示例目前未使用新的暂停/恢复和网络连接/断开连接API的例子进行更新。
- 新功能:添加了类型
EOS_EApplicationStatus
和EOS_ENetworkStatus
。 - 新功能 :游戏客户端恢复为前景状态时,SDK现在会根据它处于背景状态时所经过的时间来更新身份验证令牌的到期时间。
- 新功能 :修改了SDK日志中的显示名称,因为这是玩家个人信息。
- 新功能 :修改了SDK日志中的持续性令牌,因为这是敏感信息。
- 新功能:将
EOS_Ecom_QueryOwnership
的限制从32更新为50,以便与EOS服务请求的50次限制保持一致。 - 改进 :更新了
EOS_GetVersion
返回的SDK编译版本字符串,以包含与它相关的平台。
好友
- 新功能 :启用了EOS_Friends_SendInvite、
EOS_Friends_AcceptInvite
和EOS_Friends_RejectInvite
。游戏可以调用这些API,让玩家在游戏内认识新朋友。这些API在之前的SDK版本中未启用。
大厅
- 新功能 :添加了新的通知函数
EOS_Lobby_AddNotifyLobbyInviteRejected
和EOS_Lobby_RemoveNotifyLobbyInviteRejected
。 - 新功能:添加了
EOS_CustomInvites_AddNotifyRejected
和EOS_CustomInvites_RemoveNotifyRejected
函数,使自定义邀请与大厅接口和会话接口一致。 - 漏洞修复 :添加了关于与SDK语音功能交互的玩家的额外错误消息。现在这些错误消息会在找不到玩家时报告错误。
- 漏洞修复 :进入大厅的邀请现在可被发送邀请的玩家识别。如果许多好友邀请玩家进入大厅,当该玩家接受其中一个邀请时,社交覆层现在会删除玩家所有未使用的邀请。
P2P
- 漏洞修复 :修复了导致
EOS_P2P_QueryNATType
在EOS_Platform_Create
之后过早调用时始终失败并使用错误的NAT服务器的问题。 - 漏洞修复 :大幅降低了
EOS_P2P_SendPacket
的CPU性能成本。
玩家数据存储
- 漏洞修复 :在对玩家数据和作品存储文件读写流中缓存的文件执行哈希操作期间,提高了文件读取的性能。
示例
- 漏洞修复 :
修复了EOS_UserInfo_CopyUserInfoOptions
以使用正确的API版本类型EOS_USERINFO_COPYUSERINFO_API_LATEST
。 - 改进 :将Visual Studio调试和发布项目配置编译默认值更改为
Debug_SDL
和Release_SDL
。 - AuthAndFriends示例 :
- 优化了自定义邀请对话框上的UI。
- 语音示例 :
- 添加了对设置个别玩家的音频音量的支持。
社交覆层
- 新功能 :添加了
EOS_UI_PauseSocialOverlay
来暂停社交覆层,添加了EOS_UI_IsSocialOverlayPaused
来检查社交覆层是否已暂停。- 暂停时,社交覆层不会显示。
- 在剧情画面期间暂停社交覆层,以阻止祝福并让玩家暂时沉浸在你的体验中。
- 新功能 :添加了
EOS_UI_ShowBlockPlayer
和EOS_UI_ShowReportPlayer
。这些会将状态更新发送到社交覆层,请求屏蔽或举报某个玩家。 - 新功能 :添加了
EOS_UI_GetFriendsExclusiveInput
,这样你的游戏可以立即检查社交覆层是否处于独占输入模式。之前,游戏必须使用EOS_UI_OnDisplaySettingsUpdatedCallback
回调来跟踪此状态。 - 新功能 :社交覆层现在会向玩家显示其所有Epic好友。这包括从未玩过该玩家目前所玩游戏的Epic好友。
- 新功能 :添加了功能,以便玩家可以:
- 搜索Epic好友
- 管理Epic好友:添加和删除好友,接受和拒绝传入的好友邀请,以及取消传出的好友邀请
- 屏蔽Epic好友
- 举报Epic好友
- 新功能 :社交覆层现在可以将跨平台好友与Epic好友一起显示。玩家若从Epic Games商城启动你的游戏,可以看到从Steam启动你的游戏的好友。
- 漏洞修复 :大厅已满时,不再显示邀请按钮。
- 改进 :游戏状态发生变化或网络断开连接时,将隐藏社交覆层。
用户信息
- 新功能 :已将
DisplayNameSanitized
添加到EOS_UserInfo
和EOS_UserInfo_ExternalUserInfo
。当你的游戏在支持净化的平台上运行时,这会包含净化后的显示名称。
语音
- 新功能 :已将
bParticipantInBlocklist
字段添加到EOS_RTC_ParticipantStatusChangedCallbackInfo
,它在玩家添加到屏蔽列表或从中删除时进行报告。这可用于了解玩家何时由于处于屏蔽列表中而无法在大厅被听到。- 注意 :这是自动执行的内部屏蔽,你无法将其覆盖。
- 新功能 :添加了EOS_RTCAudio_UpdateParticipantVolume进行音频音量控制,以扩展(并取代)现有音量控制。
- 漏洞修复 :已允许在RTC线程上设置
NoAffinityMask
。 - 漏洞修复: 修复了OSX上音频输入无法识别设备的问题。
- 废弃 :在
EOS_Lobby_AddNotifyRTCRoomConnectionChangedOptions
结构体上废弃LocalUserId
和LobbyId
。
C# SDK
-
新功能(重大更改) :
- 已将大部分引用类型(类)更改为值类型(结构体),从而带来显著的性能提升。
- 你在API调用中传递选项结构体时,必须使用
ref
关键字。 - 你在回调中传递信息结构体时,必须使用
ref
关键字。 - 由于引用类型(类)现在为值类型(结构体),因此你的代码中可能会有新的漏洞,具体取决于你如何分配选项并在API调用中传递它们。我们推荐针对这方面的退化进行测试。
-
新功能 :SDK现在使用byte[]而非ArraySegments,以防止不必要地复制数据。
-
新功能 :添加了新的Utf8String类,以减少UTF-16到UTF-8转换。
-
新功能 :已将修复、优化和改进添加到封装器代码。
-
漏洞修复 :为Win32和macOS添加了动态绑定符号映射。
工具
开发人员身份验证工具
- 新功能 :该工具会将玩家选择的端口持久化。在后续启动时,UI中会自动选择此端口。
- 新功能 :该工具会在两次使用之间记住玩家凭证,无需玩家登录来刷新。
- 漏洞修复 :该工具会在长时间运行时刷新玩家凭证。
库
- 新功能 :更新了openssl-1.1.1n。
升级说明
反作弊
- 请参阅文档,详细了解如何在跨平台游戏中使用点对点模式。
- 注意 :要确保身份验证能够正确用于该功能,你必须在使用该功能时同时更新PC和主机平台的SDK。
编程升级说明
身份验证重大更改
- 在Windows上,
EOS_LCT_AccountPortal
和EOS_LCT_ExternalAuth
登录类型现在需要安装EOS可再发行程序包,并且你的游戏必须使用EOS引导程序启动。
EOS核心重大更改
- 所有游戏都必须调用以下两个API,才能确保SDK的正常工作:
EOS_Platform_SetApplicationStatus
EOS_Platform_SetNetworkStatus
- 在平台接口中添加了这些API。它们会在游戏暂停和恢复时,以及在本地系统的网络状态发生变化时,通知SDK。
你还可以选择性地使用两个新增API来检查状态:
EOS_Platform_GetApplicationStatus
EOS_Platform_GetNetworkStatus
已知问题 :iOS和Android示例目前未使用新的暂停/恢复和网络连接/断开连接API的例子进行更新。
C# SDK重大更改
- 已将大部分引用类型(类)更改为值类型(结构体),从而带来显著的性能提升。
- 你在API调用中传递选项结构体时,现在必须使用
ref
关键字。 - 你在回调中使用信息结构体时,现在必须使用
ref
关键字。
语音
- 玩家加入RTC房间时,最初会被屏蔽,直至其实际屏蔽状态解除为止。这意味着,其屏蔽状态的通知不止一次。
ParticipantStatus
设置为EOS_RTCPS_Joined
,其bParticipantInBlocklist
在更新为其实际屏蔽状态之前,最初设置为true。 EOS_Lobby_AddNotifyRTCRoomConnectionChangedOptions
的LocalUserId
和LobbyId
字段现在已废弃。- 现在会为所有本地用户和大厅调用注册的回调。
- 如果游戏需要执行筛选,请使用
EOS_Lobby_RTCRoomConnectionChangedCallbackInfo
回调参数中的LocalUserId和LobbyId。
特定于平台
主机通用
- 漏洞修复 :修复了
EOS_RTC_XXX
函数可能会在生效之前尝试使用网络的问题。EOS_RTC_XXX
功能现在遵循当前EOS_HPlatform
网络状态值。
Steam
- 新功能 :在支持原生净化的平台上运行时,
EOS_UserInfo和EOS_UserInfo_ExternalUserInfo
中的DisplayName
字段现在有一个DisplayNameSanitized
对等项,表示平台的净化或筛选功能已处理的名称版本。 - 漏洞修复 :更新了Steam好友界面,使用更多好友标记来表示屏蔽的用户。
索尼PlayStation
- 已更新为PS4 SDK 9.508.001和PS5 SDK 5.00.00.33。
任天堂Switch
- 已更新为任天堂Switch SDK 13.3.2。
- 废弃 :
EOS_Switch_InitializeOptions
中的OnNetworkRequested
回调现在已废弃,并由新的EOS_Platform_OnNetworkStatusChanged
API取代。 - 大厅
- 新功能 :现在EOS SDK会在适用于在线匹配时遵循并自动强制实施任天堂Switch在线会员身份权限要求。
微软Xbox
- 已将Xbox GDK更新为版本211001。
- 在Xbox GDK平台上添加了对EOS开发人员身份验证工具的支持。
- 将开发人员身份验证工具的目标IP地址视为本地IP,例如192.168.x.x、10.x.x.x、127.x.x.x、172.16.x.x到172.31.x.x,或等效的IPv6地址。
- 目前不支持主机名。
- 此功能仅用于开发和测试:使用GDK自己的身份验证在真实场景中登录用户。此功能不能用于零售设备。
- 漏洞修复 :修复了GDK净化器(GDK Sanitizer)中可能导致对微软服务发出无限数量的重新净化调用的漏洞。
1.14.2-hf-2 - 2022年7月7日
注意 - 如果你在Stream上发布游戏:
- 如果你已经下载了并在使用EOS SDK 1.14.2版本或1.14.2-hf-1版本,你需要下载并使用1.14.2-hf-2(C或C#)版本。
- 1.14.2-hf-2更新了SDK(C版本)和SDK(C#版本)中对Steam的认证的部分。适用于主机的SDK不受影响。
版本说明
C版SDK和C#版SDK
身份验证
#C版SDK和C#版SDK
- 废弃:
EOS_Auth_Login
中的EOS_ECT_STEAM_APP_TICKET
已停止使用。请使用EOS_ECT_STEAM_SESSION_TICKET
。- 注意:适用于主机的SDK不受影响。
1.14.2-hf-1 - 2022年2月14日
注意:如果你已经下载了EOS SDK 1.14.2版本,你也必须下载此版本SDK,以解决反作弊问题(见下文)。
版本说明
反作弊
- 漏洞修复:我们修复了反作弊引导程序在传递参数时剥离符号的问题。
1.14.2 - 2022年2月1日
版本说明
反作弊
- 新增:反作弊引导程序现在支持指定 .json 的名称并从中解析数值。要提供自定义.json文件,请在引导程序中加入以下内容:
-anticheat_settings=Custom.json
。注意,该文件仍然必须放在与之前相同的目录中。 - 漏洞修复: 修复了反作弊引导程序在用户的Windows用户名中使用非ASCII字符时无法启动的问题。
- 漏洞修复:修复了反作弊引导程序在转发参数时剥离引号的问题。
- 漏洞修复:修复了在反作弊引导程序加载窗口中初始化Steam覆层的问题。
- 漏洞修复:修复了在Fedora Linux上导致游戏无法启动的反作弊错误。
- 漏洞修复:修复了反作弊集成工具有时会对包含非ASCII字符的工作目录路径失效的问题。
- 漏洞修复:修复了
AntiCheatServer
中可能存在的内存泄漏问题。 - 漏洞修复:修复了在单个游戏服务器中出现大量玩家或后端连接不稳定时可能出现的崩溃。
- 改进了反作弊集成目录文件的布局。
- 反作弊接口的
ProtectMessage
和UnprotectMessage
函数现在可以从任何线程调用,但是它们不是线程安全的,不能从多个线程同时调用。 - 改进了
ProtectMessage
和UnprotectMessage
的错误记录。
身份验证
- 漏洞修复:修复了使用与服务器客户端ID不同的客户端ID时,
EOS_Auth_VerifyIdToken
从游戏客户端收到的令牌出现失败的错误。 - 漏洞修复:修复了
EOS_Auth_VerifyIdToken
不允许被游戏客户端调用的错误。 - 漏洞修复:修复了
EOS_Auth_VerifyIdToken
不会拒绝过期令牌的错误。 - 增加了返回
ApplicationId
,ClientId
,ProductId
,SandboxId
,DeploymentId
和EOS_Auth_VerifyIdTokenCallbackInfo
中的外部账户信息给调用者。
连接
- 漏洞修复:修复了一个问题,即
EOS_Connect_AddNotifyLoginStatusChanged
在身份验证过期时不会启动(除非是极少数情况)。现在,当用户因验证过期而注销时,已注册的回调将被正确通知。 - 漏洞修复:修复了使用与服务器客户端ID不同的客户端ID时,
EOS_Connect_VerifyIdToken
从游戏客户端收到的令牌出现失败的错误。 - 漏洞修复: 修复了
EOS_Connect_VerifyIdToken
不允许被游戏客户端调用的错误。 - 漏洞修复: 修复了
EOS_Connect_VerifyIdToken
不会拒绝过期的令牌的错误。 - 增加了在
EOS_Connect_VerifyIdTokenCallbackInfo
中返回ClientId
,ProductId
,SandboxId
和DeploymentId
给调用者。
核心
- 新增:EOS SDK的版本和配置信息现在被写入启动时的日志输出中,以帮助进行故障排除。
电子商务
- 漏洞修复:修复了一个错误,即
EOS_Ecom_Transaction_CopyEntitlementByIndex
未能正确填充EOS_Ecom_Entitlement
的CatalogItemId
的错误。
示例
- 漏洞修复:排行榜 - 修复了修复了排行榜示例中将排行榜配置为永不过期时出现的崩溃。
- 漏洞修复:解决了登录示例(iOS/Android)中的一个身份验证问题。
基于会话的匹配
- 现在可以创建强制惩罚的会话。受惩罚的玩家既不能加入也不能在启用了惩罚的会话中注册。 更多信息请参见惩罚接口页面。
社交覆层
- 漏洞修复:修复了SDK和EOS覆层之间的通信层中一个非常罕见的崩溃问题。
作品数据存储
- 对许多错误案例的日志记录进行了改进
编程升级说明
反作弊
- 为加密/解密失败的情况增加了日志条目。关于无效参数的错误日志已有。
主机相关
任天堂Switch
- 新增:任天堂Switch的任天堂SDK版本从11.4.3更新为13.3.0。
已知问题
反作弊
- 当反作弊引导程序提供了自定义图标时,有时会出现模糊的问题。
- 这将在下个版本中解决。
2021
1.14.1 - 2021年11月8日
版本说明
新功能:
-
自定义邀请
自定义邀请(Custom Invites)功能为那些希望能够在使用自己的群组功能的同时也能利用社交覆层(Social Overlay)和Epic Games启动程序按钮和提示的开发者而设计。
开发者提供随机字符串负载,以便发送给其他玩家,并且此负载使用直接API调用或者通过社交覆层邀请(Social Overlay Invite)按钮发送。和通过EOS会话以及大厅相同,收信玩家可以看到同样的社交覆层“邀请已接收”提示,并且已接收的邀请也可以按需触发新的EOSSDK API回调。
-
向验证与好友(AuthAndFriends )示例添加了
自定义邀请
UI元素和功能。 -
发送邀请(Send Invite) 按钮可以开启发送邀请对话,允许用户设置负载并选择目标用户,最终 发送 邀请。此处并不使用发送按钮,当 “发送”按钮出现在当前能够接收邀请的任何用户附近时,也可以打开覆层。
-
接收邀请后将会出现对话界面,将显示邀请的细节并提供 接受 和 拒绝 按钮,最终以
成功或取消(Success/Canceled)
结果结束邀请。
反作弊
- 新增: 为引导程序新增了“verbose”日志支持,可以将
-v
和–verbose
两个中的任意一个作为参数传递给命令行。 - 新增: 引导程序现支持在Windows上自定义运行时图标。如需使用自定义图标,请在
<working_dir>/_EasyAntiCheat/_
目录下放置BootstrapperIcon.ico
。 - 漏洞修复: 修复了在单个游戏服务器中存在大量玩家时
反作弊服务器
后端超时的错误。 - 漏洞修复: 修复了在单个游戏服务器中存在大量玩家时或者后端连接不稳定时可能出现的崩溃问题。
- 漏洞修复: 修复了
AntiCheatClient PollStatus
函数的OutViolationType输出参数错误命名为ViolationType的问题。 - 漏洞修复: 修复了
AntiCheatClient PollStatus
函数在收集C# SDK时缺少正确输出参数的问题。 - 漏洞修复: 引导程序在Windows中已获得代码签名。
- 漏洞修复: 如果
Settings.json
定义的可执行字段的目标是一个目录,则引导程序在会显示错误。 - 安全系统升级。
身份验证
- 漏洞修复: 修复了使用
EOS_ELoginCredentialType::EOS_LCT_AccountPortal
和EOS_ELoginCredentialType::EOS_LCT_DeviceCode
证书登录时EOS_Auth_CopyIdToken
不提供登录ID 令牌的问题。
连接
- 增加了使用Epic 账户ID令牌的用户认证支持,包括新的
EOS_EExternalCredentialType::EOS_ECT_EPIC_ID_TOKEN
证书类型。 - 新增Amazon为受支持的用户认证提供方。
- 扩展了
EOS_Connect_VerifyIdToken
,以返回与已验证的产品用户ID相关的外部账户信息。 - 更新了
EOS_Connect_QueryProductUserIdMappingsOptions
结构的头注释,以配合专用服务器的使用。
核心
- 漏洞修复: 修复了通过EGS发布的构建在Mac上的崩溃问题。
- 支持的最低macOS 版本从10.14变更为10.12。
大厅
漏洞修复: 修复了创建/加入大厅失败并在关闭连线时销毁所有现存大厅的问题。
社交覆层
- 新增: 增加了自定义邀请接口,让开发者能够发送和接收任意负载,并与EOS大厅及会话一样提供高级功能。
- 新增: 将自定义邀请UI元素和功能添加至验证与好友(AuthAndFriends )示例。
- 发送邀请 按钮可以开启发送邀请对话,允许用户设置负载并选择目标用户,最终“发送”邀请。
- 接收邀请后将会出现对话界面,将显示邀请的细节并提供 接受 和 拒绝 按钮,最终以
成功或取消
结果结束邀请。 - 自定义邀请接口:新增“负载”作为
OnCustomInviteReceived
和OnCustomInviteAccepted
回调信息的参数。
- 自定义邀请 - 添加了
EOS_CustomInvites_NotifyCustomInviteAccepted
、EOS_CustomInvites_RemoveNotifyCustomInviteAccepted
、EOS_CustomInvites_NotifyCustomInviteProcessed
主机支持
索尼PlayStation
- 新增: EOS SDK PlayStation 4 现面向9.000 PlayStation 4 SDK。
- 新增: EOS SDK PlayStation 5 现面向4.000 PlayStation 5 SDK。
已知问题
反作弊
- 反作弊引导程序缺少一些本地化翻译
- Steam覆层会在反作弊引导程序打开时自动初始化
- 反作弊在Fedora/Red Hat Linux中无法初始化
- 如果Windows用户名包含非ASCII字符,反作弊引导程序可能会无法启动
- 一些配置的AntiCheatServer会出现内存泄漏
- AntiCheatServer可能会在玩家数量非常多的时候崩溃
EOS连接和EOS验证
EOS_Connect_VerifyIdToken
和EOS_Auth_VerifyIdToken
可能会由于服务器和游戏客户端之间的不同Client ID而出错EOS_Connect_VerifyIdToken
和EOS_Auth_VerifyIdToken
无法正确检查令牌有效期EOS_Connect_VerifyIdToken
和EOS_Auth_VerifyIdToken
无法用于游戏客户端,除非SDK初始化时将bIsServer设为true
1.14 - 2021年9月23日
版本说明
新功能:
- 进度快照, (Account Merge Service Preview)
- 为了准备加入账户合并,添加了一个新的功能。
- 进度快照(Progression snapshots) 可以让开发者保存用户在应用中的进度相关的键/值对。该信息会被用于账户合并,从而允许用户在合并时进行选择。参考相关文档来了解更多细节。
反作弊
- 新功能: 为Linux添加了反作弊支持,包括Wine/Proton
- 新功能: 为Mac(基于Intel)添加了反作弊支持。
- 漏洞修复: 修复了无法发送反作弊游戏数据
UnregisterClient
事件的问题。 - 漏洞修复:
EOS_AntiCheatServer_RegisterEvent
不再接收包含 '.' 的事件名称。之前这样会导致后端拒绝而不显示明确的错误。 - 漏洞修复: 修复了导致无法发送反作弊游戏数据
UnregisterClient
事件的内部bug。 - 漏洞修复: 修复了系统在错误的时刻更新时钟时可能出现的反作弊系统问题。
- 漏洞修复: 修复了反作弊客户端模块测试工作流程无法正确运行,并且导致 "connection failed" 的错误。
- 更新了反作弊
ProtectMessage
和UnprotectMessage
API,这样最终参数OutBytesWritten
可以仅仅是一个指向整数的有效指针。之前该整数需要初始化设置为缓冲区的长度。 - 重命名了反作弊
ProtectMessage
和UnprotectMessage
API的位置参数,使其更加简明,并且保持一致。 - 向
EOS_AntiCheatCommon_LogPlayerTakeDamageOptions
添加了DamagePosition
并且废弃了HitBoneId
。这样可以提供命中位置更准确的信息。 - 反作弊客户端模块现在由开发等级管理,而不是沙盒等级。这样与EOS服务更加一致。你必须确保在将游戏更新至该版本SDK时更新
EOS_AntiCheatTools
文件。 - EOS Connect DeviceID验证方式不支持反作弊。这里会使用一个新的结果代码
EOS_AntiCheat_DeviceIdAuthIsNotSupported
。
验证
- 新功能: 添加了新的API
EOS_Auth_CopyIdToken
、EOS_Auth_QueryIdToken
和EOS_Auth_VerifyIdToken
来允许游戏服务器、在线后端和其它客户端来安全地验证其它Epic账号用户的身份。使用现有EOS_Auth_CopyAuthToken
和EOS_Auth_VerifyAuthToken
API的游戏应该考虑切换到使用ID令牌。 - 新功能: 添加了API支持来检测本地用户的合并Epic账号状态。这用于之后要添加的Epic账号服务功能,允许用户将不同的Epic账号合并为一个。
连接
- 新功能: 添加了新的API
EOS_Connect_CopyIdToken
和EOS_Connect_VerifyIdToken
来允许游戏服务器、在线后端和其它客户端来安全地验证其它Epic账号用户的身份。 - 新功能: 添加了
EOS_Connect_CopyIdToken
、EOS_Connect_IdToken_Release
和EOS_Connect_VerifyIdToken
API用于管理Connect ID令牌。更多信息,请参考连接接口文档。
电子商务
- 新功能: 公开了
DecimalPoint
,用于EOS_Ecom_CatalogOffer
结构中的价格。比如,DecimalPoint '2' 和 CurrentPrice64 '12345' 会是 '123.45'。
覆盖技术平台
- 漏洞修复: 通知回调,由
EOS_UI_AddNotifyDisplaySettingsUpdated
添加,之后由EOS_UI_RemoveNotifyDisplaySettingsUpdated
在tick之前移除,不再会被调用。之前它们会被调用一次,如果游戏恰好空闲出了依赖的状态,那么可能会出现崩溃。
P2P
- 现在当
EOS_P2P_AddNotifyPeerConnectionEstablished
和EOS_P2P_RemoveNotifyPeerConnectionEstablished
建立连接时,可以获得通知。 - 现在可以用
EOS_P2P_ClearPacketQueue
为/从一个指定的远程用户和套接字清除队列中的输入和输出包体。
玩家数据存储
- 漏洞修复: 修复了从玩家数据存储本地缓存读取文件非常缓慢的问题。
- 改进: 改进了
PlayerDataStorage
记录的出错情况。
状态
- 漏洞修复: 修复了状态服务在失去连接时仍然试图自动更新状态的问题。
示例
- 漏洞修复: 通过向Makefile添加缺失的
AssetUtils.cpp
,修复了Mac / Linux上排行榜的构建。
惩罚
- 向
EOS_Sanctions_PlayerSanction
添加了TimeExpires
和ReferenceId
字段。该信息之前虽然可以在EOS开发者门户中看到,但是在SDK API中不可用。
语音
- 公开了
EOS_RTC_SetSetting
和EOS_RTC_SetRoomSetting
APIDisableEchoCancelation
停用了声音通道的回声消除。默认为False
DisableNoiseSupression
停用了声音通道的噪音消除。默认为False
DisableAutoGainControl
停用了声音通道的自动增益控制。默认为False
DisableDtx
全局/每个房间允许停用DTX。默认为False
移动端
iOS
- 漏洞修复: 修复了iOS 14中URL scheme包含无效字符而造成的错误。
更新说明
反作弊
- 更新至SDK 1.14时,你需要从
EOS_AntiCheatTools
zip文件中将start_protected_game.exe
、EasyAntiCheat_EOS_Setup.exe
以及anticheat_integritytool.exe
文件更新至最新版本。 start_protected_game.exe
中的变动:- 以下设置不再支持,它们之前在关联的
Settings.json
中定义:parameters
: 引导程序现在会将全部参数在进程开始时输送至游戏进程,因此关联的设置文件无法支持该功能。use_cmdline_parameters
: 由于 parameters 字段移除,同时移除该重复项。working_directory
: 因为我们现在将引导程序放置于游戏的根目录(全部平台适用),所以该项移除。logo_position
: 新设计的引导程序限制了其位置,因此移除。hide_splash_screen
: 因为引导程序内部设计发生了变化,所以移除。hide_ui_controls
: 因为引导程序内部设计发生了变化,所以移除。
- 以下设置不再支持,它们之前在关联的
- 如果你要让Windows游戏支持Wine/Proton,你必须在EOS开发者门户中激活Linux模块。参考EOS开发者文档了解更多详情。
程序更新说明
反作弊
- 使用
EOS_AntiCheatCommon_LogPlayerTakeDamageOptions
应该更新至设置DamagePosition
字段,而不是HitBoneId
。这样可以提供命中位置更准确的信息。
1.13.1 - 2021年7月27日
版本说明
C# SDK
- 漏洞修复: 修复了C# 版本 <7的兼容性问题。
- 漏洞修复: 修复了iOS配置目标。
大厅
- 将
EOS_Lobby_LocalRTCOptions
的参数bAudioOutputStartsMuted
重命名至了bLocalAudioDeviceInputStartsMuted
,使其更具描述性。 - 漏洞修复: 移除了大厅更新中的错误警告。在更新时,客户端可能比后端了解更多属性。之前这样会导致不应出现的 "out of sync" 错误。
- 漏洞修复: 修复了RTC初始化选项没有在EOS平台创建时指定,而大厅启用了RTC房间功能,这种情况下会发生崩溃。现在,大厅创建失败时会输出
EOS_InvalidRequest result
。 - 漏洞修复: 修复了使用大厅RTC房间功能时一直会出现的错误报警信息。
玩家数据存储
- 针对
EOS_PlayerDataStorage_QueryFile
、EOS_PlayerDataStorage_QueryFileList
和EOS_PlayerDataStorage_ReadFile
中一些报错的情况添加了对应的日志记录。
程序更新说明
大厅
- 使用
EOS_Lobby_LocalRTCOptions
的参数bAudioOutputStartsMuted
时,必须重命名为bLocalAudioDeviceInputStartsMuted
。
主机支持
Playstation®
- 新功能: PS5 SDK版本设为3.00.00.27
- 新功能: PS4 SDK版本设为8.508.001
任天堂Switch
- 漏洞修复: 修复了第一次使用P2P时网络不可用,而导致其认为网络始终不可用的情况。P2P现在可以在恢复网络连接的时候继续运行。
- 漏洞修复: 修复了异步大厅API调用在网络不可用的情况下,花费很长时间才提示超时的问题。
Xbox Series X|S
- 漏洞修复: 修复了Xbox Series X|S中的一个RTC音频捕获问题。
1.13 - 2021年6月21日
版本说明
新功能:
- 语音(预览服务):随着Epic在线服务首个EOS语音工具的发布,你可以让玩家在游戏中与好友或队友聊天,无需再借助第三方解决方案。查阅文档了解详情。
反作弊
- 修改了Easy Anti-Cheat的启动器,新版本依赖于SDL而不是Win32。
验证
- 漏洞修复: 修复了
EOS_Auth_Login
中需要额外许可时,交换代码流可能造成的崩溃。 - 漏洞修复: 修复了在
EOS_Auth_LinkAccount
中使用Continuance Token柄可能造成的崩溃。
核心
- 漏洞修复: 删除了某些枚举类按位运算符函数中的
constexpr
说明符,因为它们不属于constexpr
。 - 改善了
EOS_Platform_Options CacheDirectory
参数,将无效UTF8字符有效化。如果发现了无效字符,我们现在能够正常停止创建平台示例。发生这种情况时,还会记录额外的日志。
大厅
- 新增: 为大厅添加了自动实时通信(RTC)房间支持。
- 该功能后,可以实现在大厅中自动创建、加入RTC房间,并维持与RTC房间的连接。该功能需要你在EOS开发者门户中授予权限。
- 新功能: 大厅创建现在允许指定“大厅ID重载”。
- 数值在应用程序的上下文中必须唯一。
- 漏洞修复: 修复了InviteId 为空时
EOS_Lobby_RejectInvite
的日志消息错误。 - 漏洞修复: 通过
EOS_LobbySearch_SetTargetUserId
搜索其他用户现在会遵循最大搜索结果值。之前它只会返回一个搜索结果。
大厅示例
- 新功能: 在大厅示例中添加了语音选项。
玩家数据存储
- 改进了使用错误文件名称和路径时的错误消息提示。
作品存储
- 改进了使用错误文件名称和路径时的错误消息提示。
移动端
iOS
- iOS二进制内容现在会在编译时得到位码(bitcode )支持。